Estamos executando o dhclient para nossa interface Wi-Fi. Quando o Wi-Fi se desassocia do AP, temos um script que renova o IP automaticamente do novo AP:
cat dhcpaction.sh
#!/bin/sh
IFNAME=$1
CMD=$2
if [ "$CMD" = "CONNECTED" ]; then
/sbin/dhclient -cf /etc/dhcp/dhclient.conf wlan0
fi
if [ "$CMD" = "DISCONNECTED" ]; then
/sbin/dhclient wlan0 -r
fi
O problema é quando o servidor dhcp no AP (roteador) muda o intervalo de IP, de 192.168.2.X para 192.168.3.X, sem desassociar os clientes, então nosso dispositivo é não é possível saber se algo mudou no roteador para forçar a renovação do IP.
Claro, podemos definir o tempo de concessão do dhcp para 5 min, mas isso parece ruim.
Alguma solução?