4

I've read a lot of contradictory posts about this topic, but essentially what I need is for my Raspberry Pi to act as a WiFi dongle for an ethernet-enabled device. The ethernet device connected to the Pi must be passed through to the same subnet of the wireless AP, as if it was connecting directly (the Pi cannot do any NAT!).

Apart from this, the Pi itself does not need any internet connectivity. Its sole function is to act as a wireless adapter for an ethernet-only device.

With the help of things such as MAC spoofing, is this even remotely possible? I see plenty of products such as a TP link travel router that offer a "client" mode, which I presume the Pi can somehow emulate?

  • I am also interested in this. – Bob Brown Dec 9 '19 at 2:46
  • Without telling the Linux kernel that it should redirect packets from wlan0 to eth0 and vice versa I do not see how this would be possible. By loading the masquerade module of linux and by setting sysctl -w net.ipv4.ip_forward=1 with NAT rules firewall necessary on the raspberry , yes using NAT. Your connected device must have internet by the raspberry itself connected to the AP ? else why the Wi-Fi connection is required in your case ? Why your Pi cannot do any NAT ? – Ephemeral Dec 9 '19 at 5:31
  • @Ephemeral: I have a special usage scenario where I'm putting a publicly routed subnet over WiFi for "server"-like devices that are supposed to be portable. Each device requires a public IP address but does not have WiFi capabilities, hence no NAT can be used. – user3875455 Dec 9 '19 at 17:21
  • How would you tell the Linux kernel to redirect packets for wlan0 to eth0 and vice versa? Wouldn't some kind of MAC spoofing (on wlan0) be necessary since wlan0 packets will contain wlan0's MAC address, not the MAC address of the ethernet-enabled client? – user3875455 Dec 9 '19 at 17:24
2

From debian.org i have tested ProxyArp and DHCP relay with parprouted, dhcp-helper and avahi-daemon packages and it's work for me on Raspbian. My other computer (ethernet connected device) get his dhcp IP addr successfully trought the RPi with full IP connectivity.

Detail: I use bcm wlan0 RPi interface for internet wireless gateway (W.A.P on fire) wpa_supplicant connection and auth and not another wireless card. and RPi eth0 interface for the client .

sudo apt-get install parprouted dhcp-helper avahi-daemon

see the debian link for configuration.

parprouted is designed to monitor the ARP table and both proxy ARP requests and install matching /32 host routes. Running parprouted with the inside and outside interfaces handles the ARP and routing completely automatically. Note that the kernel's proxy ARP mechanism (/proc/sys/net/ipv4/conf/all/proxy_arp) is not required

parprouted does not handle packet forwarding nor DHCP or mDNS, so these features need to be enabled separately

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.