Huawei настройка dhcp option 82

Ребят, подскажите, как настроить профиль оборудования?
прилетает такой пакет от Huawei
192.168.254.14.bootps > 31.148.6.3.bootps: [udp sum ok] BOOTP/DHCP, Request from 48:8e:ef:34:7e:e7, length 577, hops 1, xid 0x55455552, Flags [none] (0x0000)
Gateway-IP 192.168.254.14
Client-Ethernet-Address 48:8e:ef:34:7e:e7
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: Discover
Client-ID Option 61, length 7: ether 48:8e:ef:34:7e:e7
Requested-IP Option 50, length 4: 192.168.99.1
Parameter-Request Option 55, length 15:
Subnet-Mask, Default-Gateway, Domain-Name-Server, Hostname
Domain-Name, BR, Static-Route, YD
YS, NTP, Vendor-Option, PRTR
Option 120, Classless-Static-Route, Classless-Static-Route-Microsoft
Agent-Information Option 82, length 27:
Circuit-ID SubOption 1, length 18: 4857544358AA769B/1
Remote-ID SubOption 2, length 5: 415/0

как сделать профиль под него?

CCIE Wireless DHCP Option 82


сделал
Remote ID
Тип: Строка
Расположение: Agent Circuit ID
Смещение: 0
Длина: 16

остальное пока поставил неактивное.

добавил коммутатор
в Remote ID прописал 4857544358AA769B
не получает IP.

в WireShark
в Circuit ID 343835373534343335384141373639422031

как правильно прописать профиль.

Сообщение morom » Пн май 07, 2018 11:34

1 как настроен option82 на huawei?

2
343835373534343335384141373639422031
это строка в 16ричном формате 4857544358AA769B 1 (в конце пробел и 1) .
сверху приведено
Circuit-ID SubOption 1, length 18: 4857544358AA769B/1
Remote-ID SubOption 2, length 5: 415/0
т.е. RemoteID = строка 415/0
Circuit-ID = строка 4857544358AA769B/1
кстати, нестыковка, серху / А в wireshark пробел (hex 20)

3
тип — судя по всему, у вас — строка
Расположение Agent Remote iD
Смещение 2 (!)
Значение 415/0

Сообщение morom » Пн май 07, 2018 11:44

а вообще — сам долго разбирался
приведу мои подсчеты

может кому поможет

опция 82 = 01 circuitid 02 remoteid

примеры
d-link
0106000403e80001020800065cd998a6a834
huawei
013445746865726e6574302f302f313a313030312e30204f525f74657374325f5f5f345f323332365f3132322f302f302f302f302f30020680fb06dac044

разбор
d-link
01 circuit-id 1 байт
06 длина hex 1 байт
000403e800 пропускаем (там хранится инфа о vlan и т.п, у меня не используется) 5 байт
01 порт hex — итого — смещение 7 байт
02 remote-id 1 байт
08 длина hex 1 байт
0006 прокускаем (см. Доки — что это) 2 байт
5cd998a6a834 mac коммутатора — итого — смещение 4 байта

huawei
у меня настройки — remoteid = mac бинарно
circuitid — хитрая строка(!)
dhcp option82 circuit-id format user-defined «%portname:%svlan.0 %sysname/0/0/0/0/0»

01 circuit-id 1 байт

DHCP RELAY (Global IP-POOL) eNSP Huawei


34 длина hex 1 байт
45746865726e6574302f302f Ethernet0/0/ string 12 байт
31 порт string — итого — смещение 14 . Если порт 10 3a313030312e30204f525f74657374325f5f5f345f323332365f3132322f302f302f302f302f30 (исторический мусор, сейчас пропускаю) пропускаем
02 remote-id 1 байт
06 длина hex 1 байт
80fb06dac044 mac коммутатора — итого — смещение 2 байт

т.к. У меня информация по портам передается в строке — мне пришлось делать профиль для портов 1-9 и 10-99 (1 и 2е цифры в записи номера порта

Источник: www.netup.ru

Настройка DHCP Option 82 на базе DHCP Snooping

DHCP Snooping — это функция безопасности коммутатора, обеспечивающая получение DHCP клиентом IP-адреса только от легитимного DHCP сервера. При настройке DHCP Snooping порт, к которому подключен легитимный DHCP сервер, назначаются в качестве доверенного (trusted). Обычно это транзитные uplink порты коммутатора. Все прочие порты считаются недоверенными (обычно это клиентские Ethernet порты коммутатора). При получении DHCP запросов от клиентского оборудования коммутатор отправляет их только в сторону доверенного порта. При этом коммутатор блокирует DHCP ответы от “нелегальных” DHCP серверов, подключенных к недовернным портам, препятствуя тем самым получению сетевых настроек от недоверенного DHCP сервера. Помимо этого DHCP Snooping позволяет создавать записи о соответствии выданного IP-адреса, VLAN и Ethernet порта коммутатора. Такие записи называются DHCP Snooping Binding. Рассмотрим настройку DHCP Snooping на примере коммутатора ISCOM2608G-2GE. К Gigabit Ethernet порту G1/1/1подключается DHCP клиент. К uplink порту G1/1/9 подключен DHCP сервер, он назначается доверенным. Схема представлена на рисунке ниже. Первоначально необходимо создать VLAN и настроить соответствующие порты коммутатора. Raisecom(config)# create vlan 100 active Set successfully Raisecom(config)# Также лучше сначала настроить транзитные uplink порты в доверенном режиме для функции DHCP Snooping Raisecom(config)# interface gigaethernet 1/1/9 Raisecom(config-gigaethernet1/1/9)# ip dhcp snooping trust Set successfully Raisecom(config-gigaethernet1/1/9)# exit Raisecom(config)# Далее выполняется настройка uplink порта (порта с подключенным легитимным DHCP сервером). Raisecom(config)# interface gigaethernet 1/1/9 Raisecom(config-gigaethernet1/1/9)# switchport mode trunk Set successfully Raisecom(config-gigaethernet1/1/9)# switchport trunk native vlan 100 Set successfully Raisecom(config-gigaethernet1/1/9)# exit Raisecom(config)# Настройка VLAN на клиентском порте в режиме VLAN Access : Raisecom(config)# interface gigaethernet 1/1/1 Raisecom(config-gigaethernet1/1/1)# switchport mode access Set successfully Raisecom(config-gigaethernet1/1/1)# switchport access vlan 100 Set successfully Raisecom(config-gigaethernet1/1/1)# exit Raisecom(config)# Для активации DHCP Snooping на клиентском порте используется команда «ip dhcp snooping» : Raisecom(config)# interface gigaethernet 1/1/1 Raisecom(configgigaethernet1/1/port)# ip dhcp snooping При необходимости выполняется настройка максимального допустимого количества записей DHCP Snooping binding. Может быть от 1 до 512 разрешенных записей на одном порте Ethernet. Если число клиентов на порте превышает заданное значение, они не смогут получить IP-адрес. Raisecom(config-gigaethernet1/1/1)# ip dhcp snooping binding max 1 Set successfully Raisecom(config-gigaethernet1/1/1)# exit После этого выполняется активация DHCP Snooping на коммутаторе. Raisecom(config)# ip dhcp snooping При необходимости, возможно настроить коммутатор так, чтобы конкретные порты не участвовали в DHCP Snooping. Для этого на таких портах отключается DHCP Snooping: Raisecom(config)# interface gigaethernet 1/1/10 Raisecom(config-gigaethernet1/1/10)# no ip dhcp snooping Для проверки конфигурации используется команда: Raisecom(config)# show ip dhcp snooping DHCP Snooping: Enabled DHCP Option 82: Enabled Port vlan Enabled Status Trusted Status Option82 Vlanlist ————————————————————————————————- gigaethernet1/1/1 — enabled no 1-4094 gigaethernet1/1/2 — enabled no 1-4094 gigaethernet1/1/3 — enabled no 1-4094 gigaethernet1/1/4 — enabled no 1-4094 gigaethernet1/1/5 — enabled no 1-4094 gigaethernet1/1/6 — enabled no 1-4094 gigaethernet1/1/7 — enabled no 1-4094 gigaethernet1/1/8 — enabled no 1-4094 gigaethernet1/1/9 — enabled yes 1-4094 gigaethernet1/1/10 — disabled no 1-4094 Для просмотра таблицы привязки используется команда: Raisecom(config)# show ip dhcp snooping binding Current Binding: 1 History Max Binding: 1 IP Address MAC Address Lease(sec) Type VLAN Port ————————————————————————————————- 192.168.100.28 00A1.AB33.0020 595 dhcp-snooping 100 gigaethernet1/1/1 Raisecom(config)# Параллельно с DHCP Snooping на коммутаторах часто настраивают поддержку DHCP Option 82. Опция 82 используется для того, чтобы передать дополнительную информацию о DHCP клиенте на DHCP сервер. Например, можно передать информацию о номере порта коммутатора, к которому подключен клиент, и или информацию о MAC адресе клиента и др. DHCP Option 82 может применяться для идентификации абонента на сервере провайдера и или привязки IP-адреса к клиентскому порту коммутатора. (В этом случае необходимо настроить также DHCP сервер для выдачи IP адреса из нужного диапазона на основе информации о клиентском VLAN и или номере порта и или MAC адресе. Например, если IP-телефоны имеют только MAC адреса 00:22:33:XX:XX:XX в VLAN 111, то для таких клиентов выдается IP адрес 172.16.1.X, и для клиентов с другими MAC адресами в VLAN 888 выдается IP адрес 192.168.1.X ). Поле Option 82 в DHCP пакете имеет две стандартные области:

  • Circuit ID — идентификатор подключенного к коммутатору клиентского устройства номера клиентского Ethernet порта. Он может быть использован для назначения параметров, уникальных для конкретного пользователя.
  • Remote ID — идентификатор коммутатора, который может быть использован для назначения сервером сетевых настроек.
Хуавей телефоны лучшие модели 2022 года

Для активации добавления информации Option 82 в DHCP пакеты, передаваемые коммутатором, используется команда:

Raisecom(config)# ip dhcp snooping information option

Для настройки Circuit ID могут использоваться переменные, добавленные в пакеты с DHCP запросами от конкретного клиента :

Raisecom(config)# ip dhcp information option circuit-id format

>STRING %h-hostname %s-slot %v-svlan %c-cvlan %p-port %m-Local mac

%r-remote mac %i=ip address %u-unit %d-port description

Добавляем к DHCP запросу данные о коммутаторе, например hostname :

Raisecom(config)# ip dhcp information option circuit-id format %h

Включаем данные о порте, к которому подключен клиент, и его VLAN в Remote ID :

Raisecom(config)# ip dhcp information option remote-id string

>STRING String of user define(%h-hostname %s-slot %v-svlan %c-cvlan

%p-port %m-Local mac %r-remote mac %i=ip address %u-unit %d-port

description %bd-bussiness description)

Raisecom(config)# ip dhcp information option remote-id string %p_%v

При необходимости DHCP Option82 может настраиваться для каждого порта в отдельности.

Для проверки конфигурации используется команда:

Raisecom(config)# show ip dhcp information option

DHCP Option Config Information

Remote-ID Mode: string

Remote-ID String: %p_%v

Источник: www.raisecom.su

Сеть на DHCP Option82 – это просто

В данной статье речь пойдет о построении сети с использованием технологии подключения пользователей, известной как IPoE с использованием динамической выдачи адресов по протоколу DHCP с использованием опции 82.

Итак нашей задачей является построить сеть в которой от пользователя требуется минимум действий для авторизации и работы в сети. Можно даже назвать это как: «воткнул кабель в компьютер, и заработало».

В качестве биллинговой системы мы будем использовать бесплатную (до 200 абонентов) сертифицированную АСР Felix2. В качестве DHCP сервера будем использовать ISC DHCP сервер.

Общая схема работы

Когда пользователь включает компьютер, операционная система отправляет DHCP запрос на получение IP адреса в сеть. На коммутаторе включено перенаправление DHCP запросов (DHCP Relay) и включена поддержка опции 82 протокола DHCP, поэтому он перехватывает DHCP запрос от пользователя, добавляет данные Option82 (Agent Circuit ID и Agent Remote ID) к DHCP пакету и перенаправляет запрос на DHCP сервер.

Когда DHCP запрос попадает на DHCP сервер, тот выдает IP-адрес основываясь на данных текущей конфигурации. В конфигурации задано соответствие IP-адреса, выдаваемого пользователю, IP-адресу и порту коммутатора к которому подключен пользователь. Конфигурация DHCP сервера формируется АСР Felix2 по имеющейся в базе данных информации.

АСР Felix2 периодически забирает от DHCP сервера данные о MAC адресах пользователей (которым были выданы IP-адреса) на портах коммутаторов. По IP-адресу и номеру порта коммутатора система находит пользователя в базе и отмечает, что MAC адрес принадлежит этому пользователю.

Также АСР Felix2 периодически забирает ARP таблицу с маршрутизатора (таблица соответствий IP — MAC) и, если пара IP-MAC соответствует пользователю в базе, данный пользователь считается авторизованным. Как только пара IP-MAC пропадает (пользователь выключает компьютер) система переводит пользователя в список неавторизованных (выполнив перед этим проверку, что оборудование абонента действительно выключено).

Практическая реализация

Для начала нам потребуется компьютер с двумя сетевыми картами и любой коммутатор, поддерживающий DHCP Relay (option 82). Первую (тестовую) сеть будем строить по следующей схеме:

В данной схеме система на АСР Felix2 будет выполнять дополнительно функцию маршрутизатора.

Установка

Скачаем (felix2.ru/download) и установим любым из описанных способов на сервер АСР Felix2.
В данной статье мы будем использовать «Установочный диск АСР Felix2». Подробная инструкция по установке АСР Felix2 находится здесь: felix2.ru/documentation
После установки входим в систему, используя логин root и пароль, указанный во время установки.
Сетевой интерфейс eth0 после установки сконфигурирован для работы с внутренней сетью:

Как отключить прослушку на телефоне Андроид Honor 8s

IP-адрес: 10.1.1.1
Маска подсети: 255.255.255.0

Интерфейс eth1 нужно настроить для работы с вышестоящим Интернет провайдером:

ifconfig eth1 1.1.1.2 netmask 255.255.255.0 route add default gw 1.1.1.1

Здесь 1.1.1.2 — IP-адрес выданный нам вышестоящим Интернет провайдером, 1.1.1.1 – IP-адрес шлюза провайдера.
Чтобы конфигурация сети не сбросилась после перезагрузки, ее нужно описать в файле /etc/network/interfaces

Установим ISC-DHCP сервер:

apt-get update apt-get install isc-dhcp-server

Сразу после установки DHCP сервер не запустится, так он еще не сконфигурирован:

Конфигурирование

Файл шаблона конфигурации ISC DHCP сервера (dhcp_opt82_ip-port.conf) и все остальные необходимые конфигурационные файлы можно скачать отсюда:
ftp://download.felix2.ru/config.examples/felix2_dhcp_opt82.tar.gz

Скачиваем, распаковываем, заменяем конфигурационные файлы:

wget ftp://download.felix2.ru/config.examples/felix2_dhcp_opt82.tar.gz tar -xf felix2_dhcp_opt82.tar.gz -C /etc/felix2/

Перезапускаем АСР Felix2:

/etc/init.d/felix2 restart

Создание оборудования и тестового пользователя в АСР Felix2

Зайдем в веб-интерфейс администратора. Можно для этого использовать тестовую машину, временно поставив на ней статический IP-адрес (например 10.1.1.10/24). Веб интерфейс администратора доступен на 444 порту по протоколу HTTPS.

Логин/пароль по умолчанию: su/su.

Чтобы появились дополнительные поля в интерфейсе, укажем в настройках интерфейса (Конфигурация -> Настройки интерфейса) что используется схема выдачи адресов DHCP-Opt82:

Теперь добавим наш коммутатор в базу оборудования (Оборудование -> Новое оборудование):
Статус: Установлено, IP-адрес: 10.1.1.253, Модель: DES-3200-28, и нажмем «Добавить».

Создаем нового пользователя (Пользователи -> Новый пользователь). Выбираем адрес подключения. Система автоматически предложит подсеть, используемую в данном доме и выберет первый свободный IP-адрес.

Выбираем оборудование к которому будет подключен пользователь. Система предложит выбрать оборудование из списка оборудования, установленного в данном доме.

Указываем что пользователь будет подключен к первому порту коммутатора. Отмечаем флаг «Подключение выполнено» и нажимаем «Добавить».

После этого пополняем счет (Пополнения счета -> Новое пополнение), активируем тарифный план (Платежи -> Платеж по тарифу). Посмотреть текущее состояние пользователя можно в (Пользователи -> Личная статистика).

Проверим, что конфигурационный файл DHCP сервера обновился:

cat /etc/dhcp/dhcpd.conf

Проверим, что DHCP сервер работает:

ps ax | grep dhcpd

Настройка коммутатора

Теперь нужно настроить коммутатор. Если коммутатор «из коробки», в инструкции должен быть указан IP-адрес «по умолчанию». Если оборудование «б/у», и вы не знаете какой у него IP-адрес/логин/пароль, нужно сбросить конфигурацию через консольное подключение.

В данной статье мы будем использовать коммутатор DES-3200-28 «из коробки».

Ставим на тестовой машине статический IP-адрес (например 10.90.90.1/8) Подключаемся к коммутатору по протоколу telnet:

Включаем, настраиваем DHCP Relay:

enable dhcp_relay config dhcp_relay hops 16 time 0 config dhcp_relay option_82 state enable config dhcp_relay option_82 check disable config dhcp_relay option_82 policy replace config dhcp_relay option_82 remote_id default config dhcp_relay add ipif System 10.1.1.1

Теперь коммутатор будет перехватывать DHCP запросы, добавлять идентификационную информацию (option 82) и отправлять на DHCP сервер (10.1.1.1)
Задаем маршрут «по умолчанию» и новый IP-адрес коммутатора:

create iproute default 10.1.1.1 config ipif System vlan default ipaddress 10.1.1.253/24 state enable

После последней команды (смена IP-адреса) соединение будет разорвано. Ставим на тестовой машине статический IP-адрес (например 10.1.1.10/24) Подключаемся к коммутатору по новому адресу, сохраняем конфигурацию:

save

Включаем на тестовом компьютере получение сетевых настроек по DHCP.
Подключаем тестовый компьютер в первый порт коммутатора. Проверяем что DHCP-Relay пакеты от коммутатора доходят до сервера и клиент получает IP-адрес:

tail –n 1000 /var/log/syslog | grep dhcpd

Проверяем, что данные пользователя правильно отображаются в интерфейсе АСР Felix2.

Реальная схема сети

Рассмотренная выше схема сети была тестовой (в один коммутатор много пользователей не подключишь). Ниже приведен пример реальной схемы сети (не более ~600 абонентов). Аплинк от магистрального провайдера приходит в оптический порт коммутатора. Этот порт нужно объединить в VLAN с портом, куда подключается сетевая карта eth1 от сервера с АСР Felix2.

Режим чтения на Хуавей

Например, объединяем 1 и 24 порт в 1000й VLAN:

create vlan v1000 tag 1000 config vlan v1000 add untagged 1,24

При росте сети также желательно разнести дома по отдельным VLAN.

Схема сети с выделенным маршрутизатором

При росте внутрисетевого(локального) трафика, соединение между коммутатором и сервером с АСР Felix2, выполняющим одновременно роль маршрутизатора, станет узким местом. Чтобы избежать этого, нужно установить выделенный маршрутизатор.

Также нужно указать АСР Felix2 получать ARP таблицу с внешнего маршрутизатора. Отредактируем файл /etc/felix2/felix2.xml:

Модуль arp_fetcher может получать таблицу ARP адресов с оборудования CISCO (interface=«CISCO»), D-Link (interface=«DLINK»), или с программного маршрутизатора на базе Linux (interface=«Linux»).

По просьбе хабражителей добавлен пример сгенерированного системой конфигурационного файла для ISC DHCP сервера.
В данном примере пользователям, подключенным в порты 1-3 коммутатора с адресом 10.1.1.253, выдаются адреса 10.1.1.2-10.1.1.4 соответственно.

# # Automatically generated configuration file # Filename: dhcpd.conf (/etc/dhcp/dhcpd.conf) # Generator: Felix2 # Creation Date: 15.05.2012 11:31:36 # # # option definitions common to all supported networks. # authoritative; default-lease-time 86400; max-lease-time 86400; ddns-update-style none; log-facility local7; if exists agent.remote-id and exists agent.circuit-id < if binary-to-ascii(16, 8, «», substring(option agent.remote-id, 2, 1)) = «0» < set switch-mac = concat(«0», binary-to-ascii(16, 8, «», substring(option agent.remote-id, 2, 1)), «:», binary-to-ascii(16, 8, «:», substring(option agent.remote-id, 3, 6))); >else < set switch-mac = binary-to-ascii(16, 8, «:», substring(option agent.remote-id, 2, 6)); >set switch-addr = binary-to-ascii(10, 8, «.», packet(24, 4)); set switch-port = binary-to-ascii(10, 8, «», substring(option agent.circuit-id, 5, 1)); set switch-port-vlan = binary-to-ascii(10, 8, «», substring(option agent.circuit-id, 2, 2)); log(info, concat(«- Lease: «, binary-to-ascii(10, 8, «.», leased-address), » via IP: «, switch-addr, » (MAC: «, switch-mac, «) on port: «, switch-port, » in VLAN: «, switch-port-vlan)); > # # subnets # subnet 10.1.1.0 netmask 255.255.255.0 < option routers 10.1.1.1; option domain-name-servers 10.1.1.1; class «1:1» pool class «1:2» pool class «1:3» pool >

  • dhcp option 82
  • биллинг
  • felix2
  • сети передачи данных
  • системное администрирование
  • Системное администрирование
  • IT-инфраструктура

Источник: habr.com

Рейтинг
( Пока оценок нет )
Загрузка ...
Китай Покупай