[avahi] multiple ethernet ports

Trent Lloyd lathiat at bur.st
Mon Aug 27 17:36:45 PDT 2007


Howdy,

On 28/08/2007, at 8:24 AM, Zachary Loafman wrote:

>> Yes. Avahi is perfectly capable of dealing with multihomed hosts.
>
> Q: How is this supposed to work if the host is multihomed across
> different fabrics? For example, I have:
>
> zc-1# ifconfig
> em0: flags=408843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>         options=30b<RXCSUM,TXCSUM,VLAN_MTU,TSO4,TSO6>
>         inet 169.254.4.36 netmask 0xffff0000 broadcast 169.254.255.255
>         ether 00:0c:29:60:3f:55
>         media: Ethernet autoselect (1000baseTX <full-duplex>)
>         status: active
>         flexnet: internal
> em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>         options=30b<RXCSUM,TXCSUM,VLAN_MTU,TSO4,TSO6>
>         inet 169.254.84.168 netmask 0xffff0000 broadcast  
> 169.254.255.255
>         ether 00:0c:29:60:3f:5f
>         media: Ethernet autoselect (1000baseTX <full-duplex>)
>         status: active
>         flexnet: unused
>
> em0 and em1 are connected to separate physical networks.
>
> Amusingly, after fixing multicast issues on BSD, avahi-browse works
> fine (I can talk mDNS over both em0 and em1 with no 169.254/16
> routes). However, I can't figure out how one would get the routing
> correct for this situation for normal traffic. If I just add a
> 169.254/16 routes, one interface can talk on one network. To do this
> in any reasonable way, it seems like I'd need to actively update
> routing tables with known hosts (and some expiration). Any thoughts?

The short answer is "you can't"

The long answer is to use the specific interface information provided  
by Avahi and bind your sockets to a specific interface, in IPv4 this  
is optional, to use IPv6 link-local addreses, this is *required*

Regards,
Trent


More information about the avahi mailing list