[LEDE-DEV] [PATCH] BT Home Hub 5A: configure Red Ethernet as DMZ interface (FS#490) and fix Red Ethernet switch port (FS#390)

Mathias Kresin dev at kresin.me
Sat Feb 18 07:57:54 PST 2017


17.02.2017 11:42, Mauro Mozzarelli:
> The BT Home Hub routers described in the scenario(s) below are connected
> also on the LAN side.
>
> I ran further tests in the first SCENARIO (Red Ethernet as eth0.2)
> monitoring the red Ethernet WAN end with wireshark and I saw arp
> requests coming from the Red Ethernet that have both mac address and IP
> that belong to the LAN port. I saw also arp requests with the correct
> mac and IP from the Red Ethernet, but these requests did not get a reply
> when the destination was another BT Home Hub 5 with the same
> configuration (and only in that case). Both routers were on the same
> subnets on LAN on the Yellow switch and WAN on the Red Ethernet.
>
> This does not happen with the unmodified code where the Red Ethernet is
> configured as eth1.2.
>
> It looks like the Ethernet ports get into an identity crisis with the
> patch.

So what you are length trying to describe is that ARP packages from the 
router are send to all vlans, right?

That bug isn't strictly related to my patch, it is just that my changes 
make the bug more obvious.

I added "lantiq: fix arp package leaking in xrx200 ethernet driver" to 
my staging tree to fix this issue as well. Would you please add this 
patch to your tree and test if it fixes the ARP package leakage for you. 
A word of warning, it might be that the patch introduces new issues.

@Felix: Would you please do a review of my changes. You added the 
function in question with c536da3 "lantiq: add VLAN handling fixes to 
xrx200 ethernet driver" but unfortunately without commit message.

I'm not sure about the purpose of the introduced function or which 
(reproducible) issue gets fixed with the function. Might be that there 
is some kind of logic bug in the function that I workaround for 
broadcast packages now. The best case would be if you only missed that 
is_multicast_ether_addr() is true for the broadcast address as well and 
the function was never intended to handle broadcast packages.

Mathias



More information about the Lede-dev mailing list