LINUX.ORG.RU
ФорумAdmin

dhcpd listen on eth0:1


0

1

Пмогите настроить dhcpd

есть компьютер с одной сетевой картой, используется в каченстве гейта.

на нем нужно настроить dhcpd который будет обслуживать внутреннюю сеть 10.0.1/24

на компьютере есть eth0 ip 192.168.15/24 и eth0:1 с адресом 10.0.1.3 вот на этом сетевом интерфейсе и планируется слушать запросы на dhcp

однако сервер не хочет запускаться, вылитает с такой ошибкой:

No subnet declaration for eth0:1 (no IPv4 addresses).
 Ignoring requests on eth0:1.  If this is not what
 you want, please write a subnet declaration
 in your dhcpd.conf file for the network segment
 to which interface eth0:1 is attached. **

вот конфиг dhcp

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
    subnet 10.0.1.0 netmask 255.255.255.0 {
        range dynamic-bootp 10.0.1.10 10.0.1.254;
        option routers 10.0.1.3;
    }

нашел инфу о том ,что можно собрать пакет с опцией USE_SOCKET однако собираться упорно не хочет, вообще не очень ясно, поддерживается ли эта опция в линуксах или нет

★★★
Ответ на: комментарий от uspen

парочитал)))

dhcpdiscover dhcloffer dhcrequest dhcpack

и где тут есть что-то, что не позволяло бы работать серверу на виртуальном интерфейсе?

IvanR ★★★
() автор топика

вот к чему приводит непонимание что такое alias и что такое на самом деле интерфейс типа eth0:1
почитай man ip по слову alias

zolden ★★★★★
()

скажем так. то, что вы хотите(вешать на сокет) имеет смысл только для unicast dhcp(такой получается после прохождения через dchp relay(не путать с убогой длинковской терминологией!))

в классическом понимании dhcp, сервер слушает L2-broadcast и отвечает на него. Для того, чтобы слушать L2-broadcast, нужно привязаться к интерфейсу(а не к конкретному ip-alias). isc-dhcp-server он тупой и ему нужен broadcast, хотя он и unicast-овый dhcp тоже переваривает

srg666
()
Ответ на: комментарий от srg666

кажется я понял.

dhcp работает с «драйверами L2», а алиас реализован «драйверами L3»

хотя все равно не понятно, почему нельзя взять и повесить исключительно на алиас.

но я кажется уже решил эту проблему, пусть внешний интерфейс будет eth0:1, а внутренний eth0)))

IvanR ★★★
() автор топика
Ответ на: комментарий от IvanR

хотя все равно не понятно, почему нельзя взять и повесить исключительно на алиас.

Потому что в этом нет никакого смысла.

Вешали бы с самого начала на eth0, всё одно dhcp-сервер будет получать запросы из обоих сетей (и с 192.168.15/24, и с 10.0.1.3) и отвечать на них. Поэтому если в сети 192.168.15/24 есть свой dhcp-сервер, могут возникнуть проблемы.

mky ★★★★★
()
Ответ на: комментарий от mky

Потому что в этом нет никакого смысла.

Ну почему же? В этом есть смысл, если обрабатывать не bcast dhcp, а unicast после релея. Таких сетей полно, например билайн шпд

srg666
()
Ответ на: комментарий от mky

только запросы у меня приходят из одной сети, внешняя не моя, да ее и закрыть можно от запросов с помощьью нехитрых правил.

IvanR ★★★
() автор топика
Ответ на: комментарий от Pinkbyte

может быть потому что dhcpdiscover-у похрен на IP-алиасы?

ясно, что ему похер, но но и мне похер, а ответ на discover идет уже с адреса сервера

IvanR ★★★
() автор топика
Ответ на: комментарий от Pinkbyte

я просто рассчитывал, что кто-то уже твикнул dhcpd под мои цели.

IvanR ★★★
() автор топика

Если я не ошибаюсь, в данном случае в 1 сегменте(читай в 1 броадкаст домене) находятся и провайдерский линк и локалка. Что уже само по себе косяк и так никогда делать не надо. Если свитч умеет - высади провайдерский линк в отдельный влан и подай на никсовую машинку тегированным. Тогда и сеть будет организована правильно и дхцп заработает, как надо. Если свитч тупой - то лучше купить ещё 1 сетевуху.

zolen
()
Ответ на: комментарий от Pinkbyte

релей - это просто конвертер broadcast в unicast, а сервер это то, что уже занимается выдачей адресов, отвечая как на традиционный bcast, так и на unicast.

srg666
()
Ответ на: комментарий от Pinkbyte

если знаете, то зачем писать, что нет смысла в конфигурации, когда вешать dhcp-сервер только на конкретный alias(=socket)? смысл есть, просто dhcpd так не умеет

srg666
()
Ответ на: комментарий от srg666

Мы с вами говорим о разных вещах. Я говорю о том, что по стандарту dhcp ничего не должен знать об алиасах на сетевом интерфейсе. Если он это умеет разруливать - то это бонус к стандарту(тут правда встают вопросы совместимости, но мы их сейчас опустим). ISC dhcp можно считать референсной реализацией стандарта.

То что имеет смысл делать так, как вы хотите - я не собираюсь с этим спорить, возможно даже мне в каких-нибудь конфигурациях подобное бы пригодилось. Проблема в том, что стандарт этого не предусматривает...

Pinkbyte ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.