Obtendo IP dinâmico, embora especificado como estático

0

Eu tenho uma máquina Linux em framboesa que funciona como um ponto de acesso.

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

E eu tenho um servidor DHCP nele. no / etc / network / interfaces Eu defini um endereço IP estático no entanto sempre que eu inicio eu recebo um IP que não é o estático, mas sim do servidor DHCP. Esse comportamento não é consistente e, às vezes, recebo o IP estático.

este é um módulo como parte de um projeto que funciona às vezes como AP e, às vezes, como cliente, com base em parâmetros em um script. Em alguns casos, ao voltar para o AP, o IP fica errado, embora os arquivos conf sejam os seguintes em todos os casos.

este é meu hostapd.conf

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

este é o meu arquivo de interfaces

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

O ping para 192.168.0.1 foi alterado para 192.168.0.33 e o destino ficou inacessível ping para 192.168.0.33 funciona

a eth0 não recebeu um IP.

    
por Guy Ephraim 06.08.2015 / 15:36

2 respostas

0

Houve uma condição de corrida entre o cliente DHCP e o "modo AP". o que significa que recebi um IP do meu próprio DHCP.

Eu o consertei fornecendo o IP estático que eu queria, ao servidor DHCP com uma restrição para limitá-lo somente ao meu endereço MAC.

    
por 07.09.2015 / 08:33
1

Verifique se a sua eth0 e wlan0 estão em intervalos de endereços IP diferentes e se o seu servidor DHCP apenas escuta no dispositivo wlan0. Além disso, certifique-se de que ele não contenha um endereço concedido para o endereço MAC wlan0.

Depois, certifique-se de que nenhum outro serviço que esteja tocando o wlan0 esteja ativo (estou pensando em NetworkManager, wicd e serviços semelhantes). Além disso, você precisa garantir que, ao trocar de "Modo Cliente" para "Modo AP", nenhuma condição de corrida pode acontecer. Caso contrário, um cliente DHCP perdido do modo cliente pode decidir alterar o endereço IP de volta.

    
por 07.08.2015 / 02:03