Problems with proxy arp with multiple addresses on the same interface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

The Linux specific get_ether_addr() function in pppd uses ioctl to get the netmask for an interface by interface name. Unfortunately, using the ip command, multiple addresses don't receive separate interface labels, which means that get_ether_addr() can only ever obtain the netmask for the first address on each in terface. This causes proxy arp to fail in certain cases when there are multiple addresses on the interface in question; specifically, when the subnet mask of the first address on the interface is smaller than the netmask of the desired address.

This can be worked around by using ip with the "label" parameter to label each interface separately, but this is undesirable, as it means unique labels need to be generated.

I have created a patch (largely borrowed from BSD) which uses getifaddrs() instead of get_ether_addr() to get the netmask. This way, the netmask for the specific address of the interface can be obtained.

Is this the appropriate place to submit this patch? I looked through the documentation, but found no mention of where patches should be submitted.

--
James Teh
Developer
NetBox Blue

Scanned by the NetBox from NetBox Blue
(http://netboxblue.com/)

-
To unsubscribe from this list: send the line "unsubscribe linux-ppp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Audio Users]     [Linux for Hams]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Fedora Users]

  Powered by Linux