IMPERATOR Опубликовано 11 марта, 2013 · Жалоба Дорый день. Имеется сеть: домовой ( dlink DES 3028) - район - ядро(3627G) - сервера (бордрер, DHCP и т.д.) Идея заключается в том что бы из ядра 3627G сделать просто агрегацию убрав с него L3, а рядом поставить сервер который и будет заниматся им. Сейчас проблема в том что не проходят DHCP пакеты от абонентов до сервера DHCP Домовые , районые комутаторы имеют ip вида 12.0.X.X , а все сервера находятся в сети 172.18.X.X DHCP релей поднят на домовых DES 3028 и указывает на DHCP сервер 172.18.1.8 . Если на Ядре сети 3627G подняты все интерфейсы то все нормально, как только убираем с него L3 маршрутизацию и заворачиваем весь трафик на сервер который должен разруливать то перестают проходить DHCP пакеты. На сервере стоит Freebsd 9.1 ix0 - в сторону города ix1 - в сторону серверной vlan 100 для управления комутаторами vlan 99 сервера vlan 302 абонентский На ix0 приходит тегированный трафик из 10 абонентскиx влан (300-310) , через ix1 уходит трафик на бордер в инет по vlan 99 Как мне кажется почему то на сервере не происходит переброса dhcp пакета из сети свичей 12.0.X.X в серверную сеть 172.18.X.X стоит программка dhcprelay в rc.conf defaultrouter"56.56.1.254" # пограничный сервер gateway_enable="YES" dhcprelay_enable="YES" dhcprelay_server="172.18.1.8" # DHCP сервер dhcprelay_iface="ix0" # сетевая смотрит в сторону города ifconfig_ix0="up" ifconfig_ix1="up" cloned_interface="vlan100 vlan99 vlan302" ifconfig_vlan100="inet 12.0.255.1 netmask 255.255.0.0 vlan 100 vlandev ix0" ifconfig_vlan99="inet 172.18.1.1 netmask 255.255.255.0 vlan 99 vlandev ix0" ifconfig_vlan302="inet 56.56.3.1 netmask 255.255.255.0 vlan 302 vlandev ix0" На 3627G убираются все ipif за исключением vlan 100 12.0.255.3 и ставится default route 12.0.255.1 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
boco Опубликовано 11 марта, 2013 · Жалоба судя по предложенному конфигу, у вас: 1. на ix1 нет никаких влан и никакого ip-адреса 2. на ix0 нет влан 300-310 (вероятно, вы имели в виду, что абонентский трафик приходит из vlan100) 3. релеить надо на нетегированном интерфейсе (вероятно, на vlan100) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IMPERATOR Опубликовано 11 марта, 2013 · Жалоба 1) на ix1 ip 56.56.1.252 из одной сети со всеми серверами 2) сейчас на ix0 поднят только vlan 302 , всего их там будет 11 с 300 по 310 - это сейчас не суть важно 3) вот с релеями что то непонятное , толи ix0 надо указывать , толи vlan 100 по которому собственно и приходит DHCP (насоклько это верно) , что значит нетегированном ? т.е. убрать vlan 100 из rc.conf и запускать на сервер трафик из сети 12.0.X.X снимая тег на агрегации. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
replicant Опубликовано 11 марта, 2013 (изменено) · Жалоба Если на Ядре сети 3627G подняты все интерфейсы то все нормально,как только убираем с него L3 маршрутизацию и заворачиваем весь трафик на сервер который должен разруливать то перестают проходить DHCP пакеты. Как мне кажется почему то на сервере не происходит переброса dhcp пакета из сети свичей 12.0.X.X в серверную сеть 172.18.X.X стоит программка dhcprelay Вообще-то для работы достаточно только включенного ipv4.forward и правильно настроенных маршрутов от DHCP сервера в сеть управления (чтобы туда-сюда трафик бегать мог). Кстати, не всегда надо светить адреса из сети управления и вообще давать DHCP серверу адрес в этой сети, ничего не мешает поднять второй system ip на 3028 и слать все с него, а управление оставить закрытым от абонов и даже по адресу dhcp сервера (который некоторые умники предлагают пихать в сеть управления) они ничего не сообразят. А тегированный или нетегированный интерфейс - это не важно ну вообще ни разу. DHCP пакеты пролетят более чем успешно и при простом разрешенном форварде. dchprelay вообще не нужно. Это лишняя сущность при правильном L3 шлюзе на FreeBSD/Linux и правильной маршрутизации от DHCP сервера в сеть управления или псевдоуправления. Даже согласно рекомендациям D-Link для их оборудования единственным местом, где релей должен быть включен, является коммутатор доступа, куда втыкаются кабели от абонентов. И ничто и никто не упоминает обязательность наличия релея на L3 маршрутизаторе между доступом и dhcp сервером. Если уж Вам вздумалось установить dhcprelay на FreeBSD, то не кажется ли Вам, что на 3028 должен упоминаться не адрес сервера, а адрес релея? По крайней мере у меня работает с Linux тазиками на позиции L3 коммутаторов без всяких нелепых релеев и даже не по сети управления, а по вторичным адресам, которые лишь номинально относятся к сети управления, но управление по ним не происходит. Все взаимодействие сетей достигается обычной статической маршрутизацией, а как известно DHCP пакет точно такой же пакет как и все остальные и пойдет по маршруту от коммутатора туда, куда ему велит таблица. Изменено 11 марта, 2013 пользователем replicant Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IMPERATOR Опубликовано 12 марта, 2013 · Жалоба Подключаем абонента в нетегированный порт vlan 302 На PC роутере tcpdupm на интерфейсах vlan 302 и ix0 ( видимо потому что 302 привязан к нему ) видны запросы вида IP 0.0.0.0 > 255.255.255.255 DHCP request А вот дальше их как то нигде уловить не получилось. Если на абонентском устройстве руками поставить ip тот который должен выдаться DHCP то все нормально начинает работать , все видно ,все пингуется и трассируется. т.е. в плане маршрутизации вродебы все впорядке , вланы везде созданы нужные , адреса тоже правильные . Но где тогда умирает DHCP и почему ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
adnull Опубликовано 12 марта, 2013 (изменено) · Жалоба Так у вас релеить должен сервер? А почему dhcp-сервер сидит во влане 99 который поднят на ix0 ? А, и еще вам на свичах доступа нужно acl-ками запретить DHCP-запросы/ответы. Тогда они не будут долетать до сервера броадкастом. Изменено 12 марта, 2013 пользователем adnull Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IMPERATOR Опубликовано 12 марта, 2013 · Жалоба DHCP релей поднят на домовых DES 3028 (12.0.X.X) config dhcp_relay add ipif System 172.18.1.8 и указывает на DHCP сервер 172.18.1.8 по поводу vlan 99: пробовали и так и по другому Упростили задачу до минимума: Freebsd 9.1, gateway_enable="YES" Две сетевые карты em0 и em1 em0: 172.18.11.1 mask 255.2552.255.0 em1: 172.18.10.1 mask 255.2552.255.0 В em1 напрямую подключаем DHCP сервер 172.18.10.10 он разадает ip адреса из пула 172.18.11.1-100 В em0 напрямую подключаем Копьютер с выставленым автоматическим получением IP по DHCP , он НИЧЕГО не получает, нету ни одного принятого пакета на клиенте. На сервере по tcpdump на em0 есть IP 0.0.0.0 > 255.255.255.255 DHCP request, на em1 нету пакетов связаных с DHCP Что тут не правильно и как должно быть что бы всетаки заработало , если руками поставить ip клинету из выдаваемого пула , то все работает. Нужен ли DHCP_relay ? ( с ним пробовали , но тоже не заработало ) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
replicant Опубликовано 12 марта, 2013 · Жалоба Нужен ли DHCP_relay ? ( с ним пробовали , но тоже не заработало ) Relay не нужен. Работать все должно и без него. Вопросы остаются только к тому кто и как настраивал FreeBSD. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
[S] Опубликовано 12 марта, 2013 (изменено) · Жалоба IMPERATOR, #ipfw show #ifconfig #netstat -r #cat /etc/rc.conf И всю схему, в которой, как вы предполагаете, это должно работать. Естессно, с ip-адресами и интерфейсами. Возможно, когда будете рисовать, разберетесь. Изменено 12 марта, 2013 пользователем [S] Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
murzik_one Опубликовано 12 марта, 2013 (изменено) · Жалоба DHCP релей поднят на домовых DES 3028 (12.0.X.X) config dhcp_relay add ipif System 172.18.1.8 и указывает на DHCP сервер 172.18.1.8 Вы с коммутатора DHCP сервер видите/пингуете (172.18.1.8)? DHCP севрер принимает коннекты на 172.18.1.8 - в конфиге прописали? (local-address 172.18.1.8;) по дороге от коммутатора до DHCP сервера - 67/UDP 68/UDP нигде не зафильтрованы? Посмотрите tcpdump'ом на dhcp сервере что летить от коммутатора. включите полную отладку на dhcp серваке, курите логи.. А вот тут в примерах есть: DHCP_option_82 релей штука элементарная, и работает с пол пинка. Изменено 12 марта, 2013 пользователем murzik_one Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IMPERATOR Опубликовано 13 марта, 2013 (изменено) · Жалоба Вообщем после долгих мучений выяснилось что dhcprelay из rc.conf так и не хочет работать , поэтому был написан скриптик в котором: #!/bin/sh /usr/local/bin/dhcprelay em1 172.18.1.8 а для того что бы работало с vlan нужно в качестве интерфейса указывать vlan300 и т.д. Так все заработало , dhcp пакеты проходят . В ближайщие дни , ночью попробуем все это заставить работать в боевом режиме. Изменено 13 марта, 2013 пользователем IMPERATOR Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
murzik_one Опубликовано 13 марта, 2013 · Жалоба а для того что бы работало с vlan нужно в качестве интерфейса указывать vlan300 и т.д. А зачем у вас релей на сервере? Сами свичи умеют делать релей, на нужный DHCP сервер... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
replicant Опубликовано 13 марта, 2013 (изменено) · Жалоба а для того что бы работало с vlan нужно в качестве интерфейса указывать vlan300 и т.д. А зачем у вас релей на сервере? Сами свичи умеют делать релей, на нужный DHCP сервер... Вот и я про то же самое спрашивал... Надо лишь на коммутаторе включить релей, а ip коммутатора смаршрутизировать в сеть dhcp сервера и наоборот, чтобы коммутатор и dhcp сервер друг друга "пинговали", если можно так выразиться. Релей в данном случае спасает видимо от некорректно настроенного шлюза на FreeBSD, который где-то в себе дропает dhcp-пакеты. Проверяется простой заменой FreeBSD на любой L3 свитч с двумя интерфейсами (один на dhcp сервер, другой в сторону коммутатора доступа) и выключенным релеем. Свитч пропустит такие пакеты и без релея, значит, надо искать почему Фря их не пропускает. Изменено 13 марта, 2013 пользователем replicant Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...