Jump to content
Калькуляторы

Настройка DHCP Opt82

Добрый день!

Стоит сервер с биллингом ACP Ideco 3.9.6 848 SoftRouter.

Не могу понять, в чём проблема. Задача такова: нужно, чтобы абоненты вставляли патч-корд в свой компьютер и были сразу в сети. Для этого, как я понял нужно использовать Настройка DHCP с Opt82 с привязкой к номеру порта. Используются свитчи, поддерживающие это (D-link DES-3200-52).

В сервере настроены следующие интерфейсы:

1. Local 17.10.0.1/17 vlan 10 (для управления свитчами и т.д.)

2. Local 17.100.0.1/17 vlan 100 (для абонентов) и так далее по vlan'у на дом

3. Внешний от вышестоящего провайдера.

В DHCP сервера настроены подсети 17.10.0.0/17 и 17.100.0.0/17.

Вот dhcp.config

ddns-update-style none;
default-lease-time 172800;
max-lease-time 172800;
authoritative;
log-facility local7;
option ms-classless-static-routes code 249 = array of integer 8;
option rfc3442-classless-static-routes code 121 = array of integer 8;

if exists agent.circuit-id
{
log ( info, concat( " Lease for ",
                    binary-to-ascii(10, 8, ".", leased-address),
                    " Switch port: ",
                    binary-to-ascii (10, 8, "", suffix( option agent.circuit-id, 1)),
                    " Switch IP: ",
                    binary-to-ascii(10, 8, ".",  packet(24, 4)),
                    " Switch.agent IP: ",
                    substring( option agent.remote-id, 2, 15),
                    " VLAN:",
                    binary-to-ascii(10, 16, "",  substring(option agent.circuit-id, 2, 2))
));
}

shared-network ISC {
subnet 17.10.0.0 netmask 255.255.128.0
{
option routers 17.10.0.1;
option subnet-mask 255.255.128.0;
option domain-name-servers 17.10.0.1;
class "match_subnet_17_10_0_0_17"
{
  match if ((binary-to-ascii (10, 16, "", substring( option agent.circuit-id, 2, 2)) = "10") );
}
pool
{
 allow members of "match_subnet_17_10_0_0_17";
}
}
# end subnet 17.10.0.0 netmask 255.255.128.0
subnet 17.100.0.0 netmask 255.255.128.0
{
option routers 17.100.0.1;
option subnet-mask 255.255.128.0;
option domain-name-servers 17.100.0.1;
option ms-classless-static-routes   17, 17,100,0, 17,10,0,1;
option rfc3442-classless-static-routes   17, 17,100,0, 17,10,0,1;
class "match_subnet_17_100_0_0_17"
{
  match if ((binary-to-ascii (10, 16, "", substring( option agent.circuit-id, 2, 2)) = "100") and (binary-to-ascii(10, 8, ".",  packet(24, 4)) = "17.10.0.2"));
}
pool
{
 allow members of "match_subnet_17_100_0_0_17";
}
}
# end subnet 17.100.0.0 netmask 255.255.128.0

Коммутатор настроен строго по схеме отсюда http://docs.carbonsoft.ru/pages/viewpage.action?pageId=2688651

В ACP Manager'е пул IP-адресов зависит от тарифа. То есть, Тариф 1 (17.15.0.1-17.20.254.254), Тариф 2 (17.25.0.1-17.30.254.254), Тариф 3 (17.35.0.1-17.40.254.254)

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

Но проблема в том, что при подключении абонента в этот порт ему вообще ничего не выдаётся, в сеть не пускает и т.д. Самое интересное, что если в настройках IPv4 у абонента прописать всё вручную, то всё работает...

Что я делаю не так? Заранее спасибо.

Share this post


Link to post
Share on other sites

ну посмотрите что там с получением адреса?

Я бы начал с просмотра файла логов dhcpd

Share this post


Link to post
Share on other sites

Та же проблема. Техподдержка грешит на неправильно настроенный коммутатор. Все по манам.

Share this post


Link to post
Share on other sites

Самый глупый вопрос - а до DHCP вообще что-нибудь добегает?

Какой формат ответов показывает tcpdump -i eth0 -n -vvvv ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this