igmpproxy启动时错误:There must be at least 2 Vif's where one is upstream.

openwrt 下启动igmpproxy时报错

# /etc/init.d/igmpproxy start

Not starting instance igmpproxy::instance1, an error was indicated

手动拉起进程,查看更多消息:

root@hbg:# igmpproxy -d -v -v /var/etc/igmpproxy.conf
Searching for config file at '/var/etc/igmpproxy.conf'
Config: Got a phyint token.
Config: IF: Config for interface br-lan.
Config: IF: Got upstream token.
Config: IF: Got ratelimit token '0'.
Config: IF: Got threshold token '1'.
Config: IF: Got altnet token 192.168.2.0/24.
Config: IF: Altnet: Parsed altnet to 192.168.2/24.
IF name : br-lan
Next ptr : 0
Ratelimit : 0
Threshold : 1
State : 1
Allowednet ptr : 82b2a8
Config: Got a phyint token.
Config: IF: Config for interface wlan0.
Config: IF: Got downstream token.
Config: IF: Got ratelimit token '0'.
Config: IF: Got threshold token '1'.
IF name : wlan0
Next ptr : 0
Ratelimit : 0
Threshold : 1
State : 2
Allowednet ptr : 0
buildIfVc: Interface lo Addr: 127.0.0.1, Flags: 0x0049, Network: 127/8
buildIfVc: Interface br-lan Addr: 192.168.2.127, Flags: 0x1043, Network: 192.168.2/24
Found config for br-lan
adding VIF, Ix 0 Fl 0x0 IP 0xc0a8027f br-lan, Threshold: 1, Ratelimit: 0
        Network for [br-lan] : 192.168.2/24
        Network for [br-lan] : 192.168.2/24
There must be at least 2 Vif's where one is upstream.   
root@hbg:# cat igmpproxy.conf

phyint br-lan upstream ratelimit 0 threshold 1
        altnet 192.168.2.0/24

phyint wlan0 downstream ratelimit 0 threshold 1

打印的错误如红色字体部分。

百度搜索一下,得到如下答案:

手动执行igmpproxy -d -vv /etc/igmpproxy.conf会发现只添加成功了下联端口,上联端口没有添加成功,查了很多资料也没找到原因,后来查看了下padavan的源代码发现是因为没有为LAN1配置IP地址,配置完ip地址后,pc端成功收到组播流。

详情查看恩山论坛(http://www.right.com.cn/forum/forum.php?mod=viewthread&tid=207693&page=1#pid1674821

给wlan0配置ip地址后,可正常运行:

root@hbg:/# igmpproxy -d -v -v /var/etc/igmpproxy.conf
Searching for config file at '/var/etc/igmpproxy.conf'
Config: Got a phyint token.
Config: IF: Config for interface br-lan.
Config: IF: Got upstream token.
Config: IF: Got ratelimit token '0'.
Config: IF: Got threshold token '1'.
Config: IF: Got altnet token 192.168.2.0/24.
Config: IF: Altnet: Parsed altnet to 192.168.2/24.
IF name : br-lan
Next ptr : 0
Ratelimit : 0
Threshold : 1
State : 1
Allowednet ptr : 8b82a8
Config: Got a phyint token.
Config: IF: Config for interface wlan0.
Config: IF: Got downstream token.
Config: IF: Got ratelimit token '0'.
Config: IF: Got threshold token '1'.
IF name : wlan0
Next ptr : 0
Ratelimit : 0
Threshold : 1
State : 2
Allowednet ptr : 0
Config: Got a phyint token.
Config: IF: Config for interface br-lan.
Config: IF: Got upstream token.
Config: IF: Got ratelimit token '0'.
Config: IF: Got threshold token '1'.
Config: IF: Got altnet token 192.168.2.0/24.
Config: IF: Altnet: Parsed altnet to 192.168.2/24.
IF name : br-lan
Next ptr : 0
Ratelimit : 0
Threshold : 1
State : 1
Allowednet ptr : 8b8318
Config: Got a phyint token.
Config: IF: Config for interface wlan0.
Config: IF: Got downstream token.
Config: IF: Got ratelimit token '0'.
Config: IF: Got threshold token '1'.
IF name : wlan0
Next ptr : 0
Ratelimit : 0
Threshold : 1
State : 2
Allowednet ptr : 0
buildIfVc: Interface lo Addr: 127.0.0.1, Flags: 0x0049, Network: 127/8
buildIfVc: Interface br-lan Addr: 192.168.2.127, Flags: 0x1043, Network: 192.168.2/24
buildIfVc: Interface wlan0 Addr: 192.168.2.224, Flags: 0x1043, Network: 192.168.2/24
Found config for br-lan
Found config for wlan0
adding VIF, Ix 0 Fl 0x0 IP 0xc0a8027f br-lan, Threshold: 1, Ratelimit: 0
        Network for [br-lan] : 192.168.2/24
        Network for [br-lan] : 192.168.2/24
adding VIF, Ix 1 Fl 0x0 IP 0xc0a802e0 wlan0, Threshold: 1, Ratelimit: 0
        Network for [wlan0] : 192.168.2/24
Got 262144 byte buffer size in 0 iterations
Joining all-routers group 224.0.0.2 on vif 192.168.2.224
joinMcGroup: 224.0.0.2 on wlan0
SENT Membership query   from 192.168.2.224   to 224.0.0.1
Sent membership query from 192.168.2.224 to 224.0.0.1. Delay: 10
Created timeout 1 (#0) - delay 10 secs
(Id:1, Time:10)
Created timeout 2 (#1) - delay 21 secs
(Id:1, Time:10)
(Id:2, Time:21)
RECV Membership query   from 192.168.2.224   to 224.0.0.1
RECV V2 member report   from 192.168.2.224   to 224.0.0.2
Mebership report was recieved on the upstream interface. Ignoring.

原文地址:https://www.cnblogs.com/rohens-hbg/p/7685126.html