Wie leitet man Pakete zwischen zwei Schnittstellen weiter?

Wie leitet man Pakete zwischen zwei Schnittstellen weiter?

Mein Laptop (ich verwende Ubuntu 13.10) ist über eine kabelgebundene Verbindung mit eth0IP mit dem Internet verbunden 192.168.42.13und fungiert auch als wifi hotspotAP wlan0mit IP 192.168.1.1(ich habe Airbase-ng verwendet, um den AP einzurichten). Jetzt habe ich ein Android-Gerät, das mit diesem WLAN verbunden werden muss. Ich sehe, dass mein Android eine Verbindung herstellen kann hotspotund die folgenden Netzwerkeinstellungen vom dhcpServer erhält, den ich eingerichtet habe. (Ich habe ein Tool namensNetzinfo IIaus dem PlayStore, um die folgenden Details auf meinem Android anzuzeigen).

# My android network settings (connected to the wlan0 of my laptop):
ip address: 192.168.1.10
subnetmask: 255.255.255.0
gateway   : 192.168.1.254
ap-mac    : xx:xx:xx:xx:xx:xx

# My pc's eth0 configuration
ip address: 192.168.42.13
submetmask: 255.255.255.0
gateway   : 192.168.42.129
iface mac : yy:yy:yy:yy:yy:yy

# My pc's wlan0 (hotspot interface) configuration
ip address: 192.168.1.1
subnetmask: 255.255.255.0
gateway   : 192.168.1.1
iface mac : zz:zz:zz:zz:zz:zz

Dieser ThreadHiereth0spricht über ein ähnliches Problem. Ich sehe, dass ich Pakete zwischen und Netzwerk weiterleiten muss, wlan0um die Geräte meines Wireless-APs mit dem Internet zu verbinden. JetztWie leite ich die Pakete weiter, die ich empfange, wlan0 to eth0und eth0 to wlan0wie verbinde ich mein Gerät mit dem Internet?

Antwort1

Sie müssen zunächst die IP-Weiterleitung auf Ihrem System aktivieren. Um dies nur dieses eine Mal zu tun, verwenden Sie

sysctl -w net.ipv4.ip_forward=1

oder

echo 1 > /proc/sys/net/ipv4/ip_forward

als root. Wenn Sie es dauerhaft machen möchten, bearbeiten Sie

/etc/sysctl.conf

und fügen Sie eine Zeile hinzu mit

net.ipv4.ip_forward = 1

Dies wird beim Neustart oder beim Ausführen angewendet

sysctl -p /etc/sysctl.conf

Sobald dies erledigt ist, müssen Sie wahrscheinlich NAT-Verbindungen herstellen, da es unwahrscheinlich ist, dass Ihr Router weiß, dass das Netzwerk 192.168.1.0/24 über 192.168.42.13 erreichbar ist. Wenn 192.168.42.13 statisch ist, können Sie

iptables -t nat -A POSTROUTING -i wlan0 -s 192.168.1.0/24 -j SNAT --to-source 192.168.42.13

andernfalls verwenden

iptables -t nat -A POSTROUTING -i wlan0 -s 192.168.1.0/24 -j MASQUERADE

Überprüf denUbuntu IptablesAnleitungzum Speichern dieser Regeln beim Neustart.

verwandte Informationen