модуль utm_dhcp + dhcp snooping

Технические вопросы по UTM 5.0
Закрыто
netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

модуль utm_dhcp + dhcp snooping

Сообщение netup_user »

Доброго времени суток, народ, ткните носом где я натупил, ибо не могу понять где.
Есть биллинг UTM5.3-002 update9, есть интерес запустить модуль utm5_dhcp по схеме подключения клиентов dhcp snooping option 82, делаю тэстовый стэнд: БИЛЛИНГ -> EDGE-CORE 3510 -> КЛИЕНТ.
И вот проблема, если поставить edge-core в режим dhcp relay то всё прекрасно работает(тоесть клиент авторизуется согласно настройкам, на нужном порту и с нужным mac адрессом), все remote-id и circuit-id прекрасно распознаются и согласно настройкам оборудования и клиента выдается ip.
Но вот когда я конфигурирую этот свитч в режиме dhcp snooping option 82 клиенту ничего не приходит, хотя в логах utm5_dhcp я вижу как он авторизирует его:

Код: Выделить всё

Nov 19 12:25:57 ?Debug : 3007800 DHCP_Server: request from 0.0.0.0:68:
DHCP packet header
      op: 1
   htype: 1
    hlen: 6
    hops: 0
     xid: 6a9ef754
    secs: 3072
   flags: 0
  ciaddr: 0.0.0.0
  yiaddr: 0.0.0.0
  siaddr: 0.0.0.0
  giaddr: 0.0.0.0
  chaddr: 00:0c:29:d4:23:78
   sname:
    file:
  option [dhcp-message-type]: 01
  option [unknown option 116]: 01
  option [dhcp-client-identifier]: 01000c29d42378
  option [host-name]: 11-51d1f3ef2e60
  option [dhcp-class-identifier]: MSFT 5.0
  option [dhcp-parameter-request-list]: 010f03062c2e2f1f21f92b
  option [vendor-encapsulated-options]: dc00
  option [relay-agent-info]: 0106000400010103020e020c373037324346423142354436

Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DBConnection_mysql&#58; <0x8030bf100> SQL SELECT query&#58; SELECT id,ip,expired,client_id,binding_id,flags FROM dhcp_leases WHERE mac='00&#58;0c&#58;29&#58;d4&#58;23&#58;78' ORDER BY id
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DBConnection_mysql&#58; <0x8030bf100> SQL SELECT query&#58; 1 rows in 0.006 sec
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DHCP_Server&#58; got DHCPDISCOVER packet
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DBConnection_mysql&#58; <0x8030bf100> SQL query&#58; UPDATE dhcp_leases SET ip='168493058',client_id='11-51d1f3ef2e60',binding_id='9437923',expired='1416389172',updated='1416389157',flags='1' WHERE id='26'
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DBConnection_mysql&#58; <0x8030bf100> SQL query takes 0.003 sec
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DHCP_Server&#58; offered IP 10.11.0.2 from the pool ID 3
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DHCP_Server&#58; sending OFFER of 10.11.0.2 to 00&#58;0c&#58;29&#58;d4&#58;23&#58;78
Nov 19 12&#58;25&#58;57 ?Debug &#58; 3007800 DHCP_Server&#58; sending reply to client 255.255.255.255&#58;68
DHCP packet header
      op&#58; 2
   htype&#58; 1
    hlen&#58; 6
    hops&#58; 0
     xid&#58; 6a9ef754
    secs&#58; 0
   flags&#58; 0
  ciaddr&#58; 0.0.0.0
  yiaddr&#58; 10.11.0.2
  siaddr&#58; 80.245.112.142
  giaddr&#58; 0.0.0.0
  chaddr&#58; 00&#58;0c&#58;29&#58;d4&#58;23&#58;78
   sname&#58;
    file&#58;
  option &#91;dhcp-message-type&#93;&#58; 02
  option &#91;dhcp-server-identifier&#93;&#58; 80.245.112.142
  option &#91;dhcp-lease-time&#93;&#58; 86400
  option &#91;routers&#93;&#58; 10.11.0.1
  option &#91;subnet-mask&#93;&#58; 255.255.255.0
  option &#91;domain-name-servers&#93;&#58; 80.245.112.9;80.245.112.10
  option &#91;domain-name&#93;&#58; utm5.loc
  option &#91;relay-agent-info&#93;&#58; 0106000400010103020e020c373037324346423142354436
параметры remote-id передаю в ascii. Но клиенту так ничего не приходит(tcpdump не видит ответов на клиенте). Возникает вопрос а правильно ли настроен свитч? Привожу настройки: порт смотрящий в сторону dhcp сервера:

Код: Выделить всё

ip dhcp snooping trust

и в глобальной конфигурации:

Код: Выделить всё

ip dhcp snooping
ip dhcp snooping vlan 1
ip dhcp snooping information option
ip dhcp snooping information option remote-id mac-address encode ascii
ip dhcp snooping information policy drop
ставил в mirror порты(и клиентский и который смотрит на сервер), tcpdump видит запрос от клиента и свитч ставит ему метку option 82 а от сервера ничего не приходит. Покажите где я не прав?

serjk
NetUP Team
Сообщения: 719
Зарегистрирован: Пн авг 14, 2006 08:56

Сообщение serjk »

На нашем стенде похожая ситуация была на DLink 3028, проблемы были с настройками IP-MAC-Port binding, клиент попадал в блэк-лист коммутатора. Посмотрите, возможно нечто подобное.

netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

Сообщение netup_user »

Проверил, у меня нет acl и блэклистов на коммутаторе. И да, при включении isc-dhcp(установлен из портов), всё работает.

И еще вопрос интересует: сам сервер dhcp без relay может работать или ему для работы необходим relay?
Меня просто смущает почему при режиме relay всё работает а при dhcp snooping перестаёт? На одном и том же свиче.

Еще один вопрос, не могу понять это баг или такова логика работы модуля:
заметил такую особенность, которая потратила моё время, если я хочу собрать на одном сервере nat и биллинг с utm_dhcp, и в конфиге /netup/utm5/dhcpd5.cfg в опции interface прописываю сетевую на которой висит фэйковая сеть, то при выдаче offer-ов utm_dhcp выдает его не на ту сетевую, которую я прописал в конфиге а на 255.255.255.255, соответвенно они вылетают из сетевой где стоит реальный адресс согласно маршруту по умолчанию

Код: Выделить всё

&#91;root@test /netup/utm5&#93;# route get 255.255.255.255
   route to&#58; 255.255.255.255
destination&#58; default
       mask&#58; default
    gateway&#58;X.X.X.X
        fib&#58; 0
  interface&#58; em0
      flags&#58; <UP,GATEWAY,DONE,STATIC>
 recvpipe  sendpipe  ssthresh  rtt,msec    mtu        weight    expire
       0         0         0         0      1500         1         0
em0 - сетевая смотрит в мир
em1 - во внутреннюю сеть

исходя из этого рождается вопрос: это так и должно быть или нет?

murano
Сообщения: 67
Зарегистрирован: Ср окт 14, 2009 06:53

Сообщение murano »

DHCP биллинга может и без opt82 работать. По Вашей же проблеме - проверьте настройки снупинга. Там вообще-то указывается доверенный порт, которому разрешено гонять пакеты от DHCP-сервера. Это может быть влан или физ. порт (или несколько вланов/портов). Скорей всего, проблема у Вас именно в этом (при условии, что без снупинга у Вас работает DHCP-Relay на коммутаторе).

netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

Сообщение netup_user »

Спасибо за коментарий, я уже разобрался. В том то и дело, что для работы модуля utm_dhcp обязательно нужен relay, неважно на свичах он будет или отдельным сервисом на сервере(не совсем понятно было именно это обязательное условие, ведь в руководстве администратора я не нашел упоминание в его обязательности). На периферии меня интересовала схема именно без настройки relay на свичах.

murano
Сообщения: 67
Зарегистрирован: Ср окт 14, 2009 06:53

Сообщение murano »

Нууу, не знаю:) У меня работает как с релеем, так и без него:)

netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

Сообщение netup_user »

Интересно было бы посмотреть на такую схему и настройку, потому что у меня так и не заработало без relay, более того, при переписке с хотлайном в кабинете пользователя UTM5 был получен ответ: "К сожалению, если на коммутаторе нет dhcp relay , работа опции 82
технически невозможна.". Сейчас у меня работает на схеме: utm_dhcp + отдельно вынесенный relay + свичи с option 82(на них relay выключен). И еще вопрос, не натыкались на проблему: если я хочу собрать простенькую тэстовую схему по типу - utm_dhcp без relay а на свичах просто option 82, каждый сегмент сети заключен в свой vlan, на сервере настроен nat, сетевая em0 смотрит в мир а em1 в сеть(на em1 собираются vlan пользователей), то почему то пакеты offer на запросы пользователей из em1 улетают в em0?

murano
Сообщения: 67
Зарегистрирован: Ср окт 14, 2009 06:53

Сообщение murano »

Мы друг друга не так поняли. Я и не говорил, что у меня opt82 без релеея работает. Без релеея просто раздача адресов.

netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

Сообщение netup_user »

Понятно, просто меня опечалило что о том что relay обязателен особо нигде и не говорится, а для человека первый раз увидившего сей биллинг это не очевидно.((( Но да ладно, главное что на данный момент всё работает, времени просто потраченного на эксперименты жалко, теперь нужно всё это натянуть на juniper и прикрутить на него CoA атрибуты)

Андрей
Сообщения: 2
Зарегистрирован: Ср апр 15, 2015 11:21

Сообщение Андрей »

Добрый день, судя по настройке опции 82 мы идем точь в точь по Вашим стопам и таким же граблям, к сожалению столкнулись с некоторой проблемой в настройке нетап+свитчи ежи (вроде все настроено, профили описаны, данные приходят со свитчей, а адреса не выдаются), можете написать в личку настройку свитча и нетпап(профиля оборудования) для примера или Ваш контакт, для общения личкой.

netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

Сообщение netup_user »

А в качестве браса что используете?

Андрей
Сообщения: 2
Зарегистрирован: Ср апр 15, 2015 11:21

Сообщение Андрей »

netup_user писал(а):А в качестве браса используете Juniper?
mikrotik

netup_user
Сообщения: 19
Зарегистрирован: Вт ноя 18, 2014 19:10

Сообщение netup_user »

В общем, как выяснилось ранее, без dhcp relay адреса выдаваться не будут, поэтому если решили пользоваться utm_dhcp вам нужно либо в вашем микротике настроить dhcp relay либо каждый из свичей в режим dhcp_relay, по другому работать не будет. У меня в качестве dhcp_relay стоит Juniper.
Настройка на свиче edge-core ECS3510-28T:
ip dhcp snooping
no ip dhcp snooping verify mac-address
ip dhcp snooping vlan 10
ip dhcp snooping information option
ip dhcp snooping information option remote-id mac-address encode ascii

любой из клиентских портов:
interface ethernet 1/7
switchport multicast packet-rate 64
switchport unknown-unicast packet-rate 64
switchport allowed vlan add 10 untagged
switchport native vlan 10
switchport allowed vlan remove 1
switchport mode access
ip source-guard sip-mac

uplink порт(в сторону dhcp):
interface ethernet 1/28
switchport multicast packet-rate 64
switchport unknown-unicast packet-rate 64
ip arp inspection limit none
switchport allowed vlan add 1 untagged
switchport mode trunk
switchport allowed vlan add 1,10,100 tagged
ip dhcp snooping trust

Настраиваем Оборудование &#8594; Профили оборудования &#8594; edge_core_option82
http://itmages.ru/image/view/2464158/bbcddbcd

relay-agent info: 010600040c1d0107020e020c373037324346423142354436 #параметры передаются в ASCII
remote-id: 020e020c373037324346423142354436
circuit-id: 010600040c1d0107
port: 07

Настраеваем Оборудование &#8594; Коммутаторы &#8594; edge core option82_ecs3510_28t
http://itmages.ru/image/view/2464168/8975e8c9

Закрыто