Первичная диагностика:

  1. DHCP сервер запущен.
  2. Убедиться, что в настройках SSID указан корректный VLAN ID.
  3. Через систему мониторинга убедиться, что пользователь подключается к правильному SSID, на тестируемой точке доступа.
  4. Если SSID с шифрованием, то по логам работы ТД, убедиться что пользователь успешно прошел авторизацию.
  5. Проверить получение адреса на другой SSID этой же точки доступа (ТД)
  6. Проверить получение адреса с другого устройства (смартфон/ноутбук)
  7. В сетевых настройках пользовательского устройства выбран режим получать адрес по DHCP.
  8. Установить статический IP  адрес на клиенте, проверить доступность шлюза при помощи отправки ping (icmp).

Если эти настройки верны, переходим к проверке настроек сервера и сетевой части. Для проведения диагностики необходимо знать MAC адрес клиентского устройства и иметь возможность инициировать получение адреса клиентом по протоколу DHCP.

 

Проверка DHCP сервера

Проверку DHCP сервера необходимо проанализировать логи работы DHCP сервера.

По логам возможно обнаружить три основные проблемы:

 

1. В логах отсутствует Discover от клиентского устройства.

На интерфейсе сервера, на который должен был прилететь Discover, необходимо запустить tcpdump и проверить, есть ли там Discover.

1.1 Discover присутствует в дампе, но не попал в логи.

Discover игнорируется из-за того, что прилетает на интерфейс, который не прослушивается сервером. Необходимо проверить, на какой интерфейс прилетает Discover и добавить этот интерфейс в конфигурацию DHCP сервера:

В файле /etc/default/isc-dhcp-server должны быть прописаны названия всех прослушиваемых интерфейсов, например:

INTERFACES="eth0 eth1"

 

2. В логах DHCP сервера присутствует Discover, но отсутствует Offer.

Для определения точной причины необходимо изучить логи DHCP сервера. Распространенные причины:

2.1 не прописана одна из используемых подсетей

В файле /etc/dhcp/dhcpd.conf должны быть прописаны подсети, содержащие адреса прослушиваемых интерфейсов, а также адрес DHCP-relay (если он используется). Даже если адреса из этих подсетей не раздаются сервером, например:

subnet 192.168.1.0 netmask 255.255.255.0 {}

2.2 в пулах закончились свободные адреса

Одна из распространенных причин состоит в том, что сервер раздал все свободные адреса, для проверки этого следует использовать руководство: Мониторинг использования пулов в ISC-DHCP-server

 

3 В логах DHCP сервера присутствуют Discover и Offer, но не приходит Request.

Необходимо снять tcpdump на интерфейсе, на который приходит Discover и проверить, есть ли в этом же дампе Offer.

 

4 Проверка связи между dhcp-сервером и dhcp-relay

Проверить пинг до dhcp-relay с сервера. Пинг должен выполняться с правильного интерфейса.

 

Проверка DHCP-relay

 

Отладка в Схеме с GRE

1. Проверка статуса GRE туннелей.

Для этого необходимо:

show tunnels status | include <XXX.XXX.XXX.XXX> 

, где XXX.XXX.XXX.XXX – первичный IP ТД

Команда вернет список туннелей, построенных этой точкой доступа.

 

2. Снятие дампа трафика на SUB-GRE туннеле проблемной точки доступа.

Для получения дампа нужно выполнить подключение под учетной записью techsupport, перейти в режим su и запустить команду:

 tcpdump -i dygreХХХ.УУУ -evn -c100

 , где ХХХ номер GRE туннеля найденный в пп выше, УУУ – номер VLAN ID

В полученном дампе необходимо выполнить поиск Discover от клиента:

 

3. Снятие дампа трафика при обмене пакетами с DHCP сервером.

Для получения дампа нужно выполнить подключение под учетной записью techsupport, перейти в режим su и запустить команду:

tcpdump -i te1_YYY.ZZZ -evn -c100

, где YYY – номер порта ESR, ZZZ – номер VLAN.

 

Отладка в Схеме без GRE

1. Снятие дампа трафика на интерфейсе в сторону клиента. При анализе дампа необходимо найти Discover от клиента.

  1. настройки файрвола на DHCP-relay,
  2. настройки сети для связи с точкой доступа
  3. настройки точки доступа,

 

2. Снятие tcdump обмена с DHCP сервером.

 

Проверка точки доступа

На точке доступа необходимо настроить открытый SSID без авторизации, в том же VLAN, что и проблемный SSID. По инструкции о снятии дампа (pcap) с точки доступа, нужно снять дамп на радио интерфейсе, к которому подключается пользователь, а также на интерфейсе eth. Результаты следует интерпретировать в зависимости от используемой схемы подключения:

Для любой схемы:

Для схемы с GRE:

Для схемы без GRE: