[HN: Debian Lenny 2.6.18-12-fza-686, vzctl 3.0.22]
I have created a Debian VE on which there's a Firefly media server (mt-daapd). Firefly uses avahi-daemon to publish a DAAP mDNS service via multicast. To use multicast, I added a veth to the VE:
[host-node]# vzctl set 1028 --netif_add eth0 --save
[host-node]# ifconfig veth1028.0 0
[host-node]# echo 1 > /proc/sys/net/ipv4/conf/veth1028.0/forwarding
[host-node]# echo 1 > /proc/sys/net/ipv4/conf/veth1028.0/proxy_arp
[host-node]# ip route add 192.168.10.1028 dev veth1028.0
[host-node]# vzctl enter 1028
[ve-1028]# /sbin/ifconfig eth0 0
[ve-1028]# /sbin/ip addr add 192.168.10.28 dev eth0
[ve-1028]# /sbin/ip route add default dev eth0
I can ping the VE from my notebook, so it seems the interface works. When I start the mt-daapd service, on the VE I can see the service published on both IPv4 and IPv6:
[ve-1028]# avahi-browse -r _daap._tcp
+ eth0 IPv6 iTunes Audio Access local
+ eth0 IPv4 iTunes Audio Access local
= eth0 IPv6 iTunes Audio Access local
hostname = [ve-1028.local]
address = [fe80::218:51ff:xxxx:xxxx]
port = [3689]
= eth0 IPv4 iTunes Audio Access local
hostname = [ve-1028.local]
address = [192.168.10.28]
port = [3689]
But on the HN (and my notebook) I see only the IPv6 service:
[host-node]# avahi-browse -r _daap._tcp
+ veth1028.0 IPv6 iTunes Audio Access local
= veth1028.0 IPv6 iTunes Audio Access local
hostname = [ve-1028.local]
address = [fe80::218:51ff:xxxx:xxxx]
port = [3689]
EDIT: firewall and routing informations:
[host-node]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[host-node]# ip route
192.168.10.28 dev veth1028.0 scope link
192.168.10.0/24 dev eth0 proto kernel scope link src 192.168.10.10
default via 192.168.10.254 dev eth0
[host-node]# ip addr
2: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:13:46:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.10.10/24 brd 192.168.10.255 scope global eth0
inet6 fe80::213:46ff:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
8: sit0: <NOARP> mtu 1480 qdisc noop state DOWN
link/sit 0.0.0.0 brd 0.0.0.0
1: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/void
9: veth1028.0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/ether 00:18:51:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet6 fe80::218:51ff:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
[ve-1028]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[ve-1028]# ip route
192.168.10.0/24 dev eth0 proto kernel scope link src 192.168.10.28
default dev eth0 scope link
[ve-1028]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
3: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/void
inet 127.0.0.1/32 scope host venet0
5: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/ether 00:18:51:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.10.28/24 brd 192.168.10.255 scope global eth0
inet6 fe80::218:51ff:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
I can't explain that... Why IPv4 multicast are ignored?
[Updated on: Wed, 27 August 2008 10:13]
Report message to a moderator