При настройке user-defined offset используется прямая битовая маска.
Пример настройки разрешения IGMPv2 Report сообщений на диапазон групп 239.4.4.0 /22 и IGMPv2 Leave сообщений в VLAN 10 через User-defined offset (весь остальной трафик запрещён):
1) Выделяем 9, 16, 18 байты. Расчёт ведётся с нуля и начинается с L3 заголовка. Помимо указанного байта обязательно захватывается следующий по счёту. Например, в offset 1 будут использоваться байты 9, 10. В данном примере 9 байт - номер протокола (2 для IGMP), 16-19 байты - Destination IP-адрес.
console(config)# user-defined offset 1 l3 9
console(config)# user-defined offset 2 l3 16
console(config)# user-defined offset 3 l3 18
2) Разбор mac access-list extended 1: в offset 1 в 1 байте берётся номер протокола IGMP 02 с маской ff, т.к не допустимо изменение данного байта. 10 байт нам не важен, поэтому выбираем значение 00 с маской 00, допуская любое значение данного байта. В offset 2 указываются первые 2 байта DST IP 239.4. Переведя их в HEX, получаем EF04. Байты изменяться не должны, поэтому используем маску ffff. В offset 3 указываются вторые 2 байта DST IP 4.0. При этом третий байт может принимать значения 4-7, что соответствует прямой маске fc (в двоичной системе счисления 3 байт маски выглядит как 11111100, что соответствует 252 в DEC или FC в HEX), а 4 байт нам не важен, поэтому выбираем значение 00 с маской 00, допуская любое значение данного байта.
Правило mac access-list extended 2 расчитывается по аналогии, только в расчёте используется DST IP 224.0.0.2 (IP-адрес, на который отправляется IGMPv2 Leave сообщение)
console(config)# mac access-list extended 1
console(config-ext-macl)# permit any any vlan 10 user-defined offset1 0x0200 0xff00 offset2 0xEF04 0xffff offset3 0x0400 0xfC00
console(config)# mac access-list extended 2
console(config-ext-macl)# permit any any vlan 10 user-defined offset1 0x0200 0xff00 offset2 0xE000 0xffff offset3 0x0002 0xffff
console(config-ext-macl)# exit
console(config)# interface gigabitethernet 0/1
console(config-if)# mac access-group 1 in
console(config-if)# mac access-group 2 in
Все не разрешённые пакеты будут отброшены.