Мой маршрутизатор сломался, поэтому я пытаюсь временно настроить что-то для общего доступа к интернет-соединению с моего основного компьютера (интернет идет через модем, подключенный напрямую к Ethernet-карте) к другим устройствам через специальную сеть, для этого у меня есть адаптер Wi-Fi, который использует zd1211rw драйвер (у меня также есть alfa rtl8187, но этот адаптер вообще не работает на Ubuntu 12.04).

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу подключиться к создаваемой AP Wi-Fi, она просто остается "получающей сетевой адрес" и никогда не завершает соединение.

Моя основная компьютерная ОС - Ubuntu 12.04, это то, чем я занимаюсь. Сначала я включил адаптер Wi-Fi в режиме монитора:

airmon-ng start wlan2

Это создает интерфейс mon0, затем я использую:

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

Отсюда я уже вижу сеть MyNetName, использующую мой ноутбук (с windows), но если я пытаюсь подключиться, он остается в "получении сетевого адреса". Обучающие программы, которым я следовал, продолжают с этими командами

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'

Затем я запускаю сервер DHCP с

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

Файл dhcpd.conf выглядит так:

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;
}

Вывод выглядит так:

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.

Последняя команда:

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

Вывод команды airbase-ng выглядит следующим образом:

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"

Так что моя проблема в том, что я не могу получить внутренний ip на ноутбуке, который пытается подключиться, диспетчер windows wifi просто остается на "получении сетевого адреса", авиабаза реагирует, показывая больше этих связанных сообщений, в то время как ноутбук пытается подключиться. Другая проблема заключается в том, что после запуска iptables --flush интернет на основном ПК перестает работать, но я хочу разобраться с этим, как только смогу полностью подключиться к MyNetName.

У кого-нибудь есть идеи, что я делаю не так?

3 ответа3

1

Я никогда не видел эту настройку с использованием airbase-ng ... возможно, вы могли бы попробовать hostapd, чтобы решить проблему постоянной реассоциации.

Кроме того, этот маршрут не имеет особого смысла:

route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.254

Попробуй без этого.

Наконец, вы можете попробовать установить tcpdump и отслеживать сетевой трафик на at0, пока клиент пытается получить dhcp. Возможно, запрос dhcp даже не проходит.

0

используйте эту команду:
sudo dhcpd -d -f -cf /etc/dhcp/dhcpd.conf at0
а потом:
sudo /etc/init.d/isc-dhcp-server start

0

Вы можете попробовать использовать isc-dhcp-server. В настоящее время у меня есть очень похожая настройка для вас, с той лишь разницей.

Установите его -> измените /etc/default/isc-dhcp-server для обслуживания на интерфейсе at0 -> запустите его используя

запуск службы isc-dhcp-сервера

Это все равно будет использовать ваш файл dhcpd.conf.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .