Einrichten des Access Point mithilfe des WLAN-Adapters in Linux

0

Mein Router ist kaputt, daher versuche ich, vorübergehend etwas für die gemeinsame Nutzung der Internetverbindung von meinem Hauptcomputer (Internet kommt von einem direkt an die Ethernet-Karte angeschlossenen Modem) über ein Ad-hoc-Netzwerk mit anderen Geräten zu installieren. Dafür habe ich einen WLAN-Adapter, der den zd1211rw verwendet Treiber (ich habe auch den alfa rtl8187, aber der Adapter funktioniert überhaupt nicht auf Ubuntu 12.04).

Das Problem, das ich habe, ist, dass ich keine Verbindung zu dem WLAN-AP herstellen kann, den ich erstelle, es bleibt einfach "Netzwerkadresse" und beendet nie die Verbindung.

Mein Hauptbetriebssystem ist Ubuntu 12.04, das mache ich. Zuerst stelle ich den WLAN-Adapter in den Monitormodus mit:

airmon-ng start wlan2

Dadurch entsteht eine Mon0-Schnittstelle, die ich dann verwende:

airbase-ng -e MyNetName -c 11 -v mon0

Von hier aus kann ich das MyNetName-Netzwerk bereits mit meinem Laptop (mit Windows) sehen, aber wenn ich versuche, eine Verbindung herzustellen, verbleibt es bei "Netzwerkadresse ermitteln". Die Tutorials, denen ich folgte, fahren mit diesen Befehlen fort:

ifconfig at0 up
ifconfig at0 192.168.1.254 netmask 255.255.255.0
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.254

iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo > '/var/lib/dhcp/dhcpd.leases'

Dann starte ich den dhcp-Server mit

dhcpd -d -f -cf /etc/dhcp/dhcpd.conf at0

Die Datei dhcpd.conf sieht folgendermaßen aus:

ddns-update-style interim; <- also tried ad-hoc instead of interim
default-lease-time 600;
max-lease-time 7200;
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
  option subnet-mask 255.255.255.0;
  option broadcast-address 198.168.1.255;
  option routers 192.168.1.254;
  option domain-name-servers 8.8.8.8;
  range 192.168.1.1 192.168.1.253;
}

Die Ausgabe sieht folgendermaßen aus:

Internet Systems Consortium DHCP Server 4.1-ESV-R4
Copyright 2004-2011 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specified in the config file
Wrote 0 leases to leases file.
Listening on LPF/at0/00:02:72:69:28:c8/192.168.2.128/25
Sending on   LPF/at0/00:02:72:69:28:c8/192.168.2.128/25
Sending on   Socket/fallback/fallback-net
Can't create PID file /var/run/dhcpd.pid: Permission denied.

Der letzte Befehl:

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

Die Ausgabe des Befehls airbase-ng sieht folgendermaßen aus:

11:34:03  Created tap interface at0
11:34:03  Trying to set MTU on at0 to 1500
11:34:03  Trying to set MTU on mon0 to 1800
11:34:03  Access Point with BSSID 00:02:72:69:28:C8 started.
11:34:10  Client 70:F3:95:B3:27:76 associated (unencrypted) to ESSID: "MyNetName"
11:34:13  Client 70:F3:95:B3:27:76 reassociated (unencrypted) to ESSID: "MyNetName"
11:34:17  Client 70:F3:95:B3:27:76 reassociated (unencrypted) to ESSID: "MyNetName"
11:34:21  Client 70:F3:95:B3:27:76 reassociated (unencrypted) to ESSID: "MyNetName"

Mein Problem ist also, dass ich keine interne IP-Adresse für den Laptop erhalten kann, der versucht, eine Verbindung herzustellen. Die Windows-Wifi-Manager-Sache bleibt einfach auf "Netzwerkadresse abrufen". Airbase reagiert, indem sie mehr dieser neu zugeordneten Nachrichten anzeigt, während der Laptop versucht, eine Verbindung herzustellen. Ein weiteres Problem ist das nach dem Laufen iptables --flush Das Internet im Haupt-PC funktioniert nicht mehr, aber ich möchte damit umgehen, sobald ich mich vollständig mit MyNetName verbinden kann.

Hat jemand eine Idee, was ich falsch mache?

peterfra
quelle
Ihr Router hatte einen DHCP-Server, der Ihrem Laptop eine dynamische IP-Adresse zur Verfügung stellte. Am einfachsten ist es, dem Laptop eine statische IP-Adresse zuzuweisen.
sawdust

Antworten:

1

Ich habe dieses Setup noch nie mit airbase-ng gesehen ... vielleicht könnten Sie es ausprobieren hostapd um das ständige Problem der erneuten Assoziation zu lösen.

Diese Route macht auch keinen Sinn:

route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.254

Versuchen Sie es ohne.

Schließlich könnten Sie versuchen, tcpdump zu installieren und den Netzwerkverkehr auf at0 zu überwachen, während der Client übermäßig versucht, dhcp zu erwerben. Vielleicht kommt die DHCP-Anfrage nicht einmal durch.

GnP
quelle
0

Sie könnten versuchen, isc-dhcp-server zu verwenden. Ich habe zurzeit ein sehr ähnliches Setup wie Sie, mit dem einzigen Unterschied.

Installiere es - & gt; Veränderung /etc/default/isc-dhcp-server auf at0-Schnittstelle zu dienen - & gt; Starten Sie es mit

Dienst isc-dhcp-server start

Dadurch wird Ihre dhcpd.conf-Datei weiterhin verwendet.

user1990426
quelle
0

Verwenden Sie diesen Befehl:
sudo dhcpd -d -f -cf /etc/dhcp/dhcpd.conf at0
und dann:
sudo /etc/init.d/isc-dhcp-server start

RL.AdmiralX
quelle