Mein PC ist mit zwei Netzschnittstellen wlan0
& ausgestattet eth0
, und ich möchte den WLAN-Anschluss als Zugangspunkt verwenden wlan0
.
- Ich habe die
hostapd
Einrichtung verwendet und sie funktioniert im Routing-Modus innerhalb des lokalen Netzwerks ordnungsgemäß. Benutzer können eine Verbindung zum Access Point herstellen, und DHCP funktioniert in beiden Segmenten ordnungsgemäß. - Der PC mit
hostapd
hat keine Firewalls oderiptables
Regeln (iptables
und Firewalls deaktiviert), da ich nur die eingebaute Firewall des ADSL-Routers verwenden möchte.
Meine Netzkonfiguration lautet wie folgt:
PC with hostapd -> cable connection -> ADSL router
wlan0 -> eth0 <-> 192.168.0.1 <-> internet
192.168.10.1 -> 192.168.0.7 -> static routing to 192.168.10.X
PC ifconfig
:
eth0 Link encap:Ethernet HWaddr 00:12:3F:F2:31:65
inet addr:192.168.0.7 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::212:3fff:fef2:3165/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2169539 errors:0 dropped:0 overruns:0 frame:0
TX packets:1008097 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3056198487 (2.8 GiB) TX bytes:72727161 (69.3 MiB)
Interrupt:16
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:3398 errors:0 dropped:0 overruns:0 frame:0
TX packets:3398 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:495444 (483.8 KiB) TX bytes:495444 (483.8 KiB)
mon.wlan0 Link encap:UNSPEC HWaddr 00-14-A5-04-94-3C-90-F0-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:151 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:17092 (16.6 KiB) TX bytes:0 (0.0 b)
wlan0 Link encap:Ethernet HWaddr 00:14:A5:04:94:3C
inet addr:192.168.10.1 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::214:a5ff:fe04:943c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1502 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:279392 (272.8 KiB)
Wie konfiguriere ich eine einfache NAT- iptables
Konfiguration auf dem PC?
- Ich möchte, dass alle Benutzer, die über
hostapd
(Netzwerk192.168.10.X
) mit dem Netzwerk verbunden sind, Zugang zum und vom Internet haben - Ich möchte keinen Datenverkehr filtern, nur NAT.
Ich kann vom WiFi-Segment keine Verbindung zum Internet herstellen:
- Der mit WiFi verbundene Client hat eine DHCP-Adresse
192.168.10.48
, und der einzige Datenverkehr isteth0
von der Adresse aus aktiv:
Hinweis: Die Adresse ist16:50:14.671587 ARP, Request who-has 192.168.0.48 tell 192.168.0.1, length 46
192.168.0.48
nicht192.168.10.48
, daher funktioniert Masquerade. - Ich kann
192.168.0.1
[ADSL-Router] nicht mehr pingen , was vorher möglich war. - Was ist mit dem Zugang des Internets zu den WIFI-Benutzern? Natürlich werde ich im ADSL-Router einrichten und bestimmte IP-Port-Pools vom Internet an bestimmte IP-Adressen eines solchen WiFi-Benutzers weiterleiten.
EDIT 1:
systemctl
zeigtiptables
als:
Obwohl ich gelaufen bin:iptables.service loaded active exited
systemctl enable iptables.service systemctl start iptables.service
EDIT 2:
- Es funktioniert, aber ist es normal, jedes Mal, wenn ich den Computer starte, Folgendes manuell über ein Startskript hinzufügen zu müssen?
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Antworten:
In der einfachsten Form:
Dadurch können alle WLAN-Benutzer auf das Internet zugreifen .
Vorausgesetzt natürlich, Ihr anderes Routing-Setup ist bereits abgeschlossen, nämlich:
Weiterleitung im Kernel aktiviert
Weiterleitung aktiviert in
iptables
:Verwenden Sie diese Option,
tcpdump -nn -i eth0
um den Datenverkehreth0
bei Problemen zu überwachen und festzustellen, ob er ordnungsgemäß NAT-fähig ist, ob die Antwort zurückkommt usw.BEARBEITEN: "Ich muss jedes Mal manuell hinzufügen, wenn ich den Computer starte (vom Startskript) ..." Es hängt davon ab, welche Linux-Distribution Sie haben. Leider hat so ziemlich jede Distribution ihr eigenes Firewall-Tool - am Ende rufen sie nur an,
iptables
aber aus irgendeinem Grund glauben die Autoren, dass die Benutzer die Funktionsweise von iptables verschleiern wollen.Um Ihre Frage zu beantworten: Ihre Firewall kann höchstwahrscheinlich so konfiguriert werden, dass diese NAT-Regel automatisch hinzugefügt wird. Der genaue Weg variiert jedoch zwischen Linux-Distributionen ohne guten Grund. Traurig aber wahr.
quelle
Ich habe für alle Gelegenheiten eine Firewall geschrieben. Bitte lesen Sie die README-Datei und das SCRIPT, bevor Sie es verwenden. Ich habe die notwendigen Regeln für HOSTAP aufgenommen
HostAP
Für HostAP müssen die folgenden Zeilen AKZEPTIERT sein, damit sie funktionieren
https://github.com/diveyez/fw.sh
quelle