I have a backup link via my neighbor's wifi (with his permission, certainly).
I hook it up via an old TP-Link 890EA. It's basically a wifi extender. On reset, it creates its own 192.168.2.0/24
network and goes into setup. You connect to it via wifi or ethernet (4 ports), then select a wifi network to connect to. It connects, then stops acting like an independent device, and just transmits all your requests onward. So DHCP is done via the network it's connected to. E.g., the first time I connect to it, I'm issued an address 192.168.2.210
, then, after I complete setup, I'm already connected to the neighbor's network and get an address in his address space, e.g., 192.168.1.159
. So far, so good.
Since the neighbor's wifi signal isn't great around my main OpenWRT router, I put my 890EA in a different room and hooked it up via VLAN=21. So, for OpenWRT, it's a device eth2.21
. OpenWRT sees it, connects, and receives an IP address from my neighbor's network, I can ping and connect to his devices:
route:
192.168.1.0/24 dev eth2.21 proto kernel scope link src 192.168.1.159
interface:
168: eth2.21@eth2: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether b6:a5:bb:72:f6:6b brd ff:ff:ff:ff:ff:ff
inet 192.168.1.159/24 brd 192.168.1.255 scope global eth2.21
valid_lft forever preferred_lft forever
config:
config device
option name 'eth2.21'
option type '8021q'
option ifname 'eth2'
option vid '21'
option ipv6 '0'
option multicast '0'
...
config interface 'wan_mark'
option ipv6 '0'
option device 'eth2.21'
option proto 'dhcp'
option defaultroute '0'
It's in the wan
firewall zone.
...and then nothing happens.
I ran tcpdump+wireshark on eth2.21
, fire up ping -I eth2.21 9.9.9.9
and here's what I see:
50 213.161974 b6:a5:bb:72:f6:6b Broadcast ARP 42 Who has 9.9.9.9? Tell 192.168.1.159
and it goes on and on.
Question: WTF does it think 9.9.9.9 is a local address and query ARP?!