В локальной сети провайдер ввел IPTV (мультикастом). У меня же собран роутер на базе FreeBSD 6.2-RELEASE. Фильтрация трафика осуществляется ipfw, функции nat возложены на pf. Сетевые карты fxp0 - в локалку, fxp1 - к провайдеру (
fxp0: flags=8a43<UP,BROADCAST,RUNNING,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
options=48<VLAN_MTU,POLLING>
fxp1: flags=9a43<UP,BROADCAST,RUNNING,ALLMULTI,SIMPLEX,LINK0,MULTICAST> mtu 1500
options=48<VLAN_MTU,POLLING>
).
Ядро собрано с options MROUTING и options PIM
В конфиге pf прописано:
nat pass on fxp1 from fxp0/16 to any -> (fxp1)
pass in quick on fxp1 all allow-opts
pass in quick on fxp0 all allow-opts
В ipfw указаны только пара запретов (не касающихся мультикаста вообще, да и отключал я ipfw, без результатов)
У провайдера CISCO общается на PIMv2, следовательно mrouted не работает. Пробовался igmpproxy (брал отсюда http://homenet.corbina.net/index.php?s=178a67519e0d477b6f4b0... )
с таким конфигом :
quickleave
phyint fxp1 upstream ratelimit 0 threshold 1
phyint fxp0 downstream ratelimit 0 threshold 1
- не заработало, на внутреннем интерфейсе запрос igmp виден, на внешнем - его уже нет. Да и pid 1747 (igmpproxy), uid 0: exited on signal 11 (core dumped) постоянно он.
Попробовал pimd - ноль реакции, все теже грабли и тоже core dumped.
224.0.0.0.4 маршрутизируется естественно через fxp1
Соответственно вопрос, почему роутер кудато проглатывает igmp?