У меня есть Linux-машина на Rasberry, которая функционирует как точка доступа.

Linux raspberrypi 3.18.7-v7+ #755 SMP PREEMPT Thu Feb 12 17:20:48 GMT 2015 armv7l GNU/Linux

И у меня есть сервер DHCP на нем. в /etc /network /interfaces я определил статический IP-адрес, однако всякий раз, когда я запускаю его, я получаю не статический IP-адрес, а скорее с DHCP-сервера. Такое поведение не соответствует, и иногда я получаю статический IP.

это модуль как часть проекта, который функционирует иногда как точка доступа, а иногда как клиент, основываясь на параметрах в сценарии. В некоторых случаях при переходе обратно к AP неверный IP-адрес, хотя во всех случаях файлы conf указаны ниже.

это мой hostapd.conf

interface=wlan0    
driver=rtl871xdrv    
ssid=my ssid
hw_mode=g
channel=6
auth_algs=1
ieee80211n=1

это мой интерфейсный файл

auto lo
iface lo inet loopback
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet static
  address 192.168.0.1
  netmask 255.255.255.0

dhcpd.conf

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
  range  192.168.0.10 192.168.0.50;
  option broadcast-address 192.168.0.255;
  option routers 192.168.0.1;
  default-lease-time 600;
  max-lease-time 7200;
  option domain-name "domain";
}

ifconfig wlan0

wlan0     Link encap:Ethernet  HWaddr 74:da:38:26:9f:d6
          inet addr:192.168.0.33  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:129 errors:0 dropped:5369 overruns:0 frame:0
          TX packets:0 errors:0 dropped:726 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:65760423 (62.7 MiB)  TX bytes:12737873 (12.1 MiB)

ifquery wlan0

address: 192.168.0.1
netmask: 255.255.255.0
broadcast: 192.168.0.255

ping на 192.168.0.1 был изменен на 192.168.0.33 и получил пункт назначения недоступен ping на 192.168.0.33 работ

eth0 не получил IP.

2 ответа2

1

Убедитесь, что ваши eth0 и wlan0 находятся на разных диапазонах IP-адресов, а ваш DHCP-сервер прослушивает только устройство wlan0. Также убедитесь, что он не содержит арендованного адреса для MAC-адреса wlan0.

Затем убедитесь, что никакие другие службы, относящиеся к wlan0, не активны (я имею в виду NetworkManager, wicd и аналогичные службы). Кроме того, вам нужно как-то гарантировать, что при переключении из "Режима клиента" в "Режим AP" условия гонки не могут возникнуть. В противном случае блуждающий клиент DHCP из режима клиента может принять решение об изменении IP-адреса обратно.

0

Возникло состояние гонки между клиентом DHCP и "режимом AP". Это означает, что я получил IP от своего собственного DHCP.

Я исправил это, предоставив статический IP-адрес, который я хотел, серверу DHCP с ограничением, чтобы ограничить его только моим MAC-адресом.

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