Автор Тема: DHCP из-под DHCP - не соображу как  (Прочитано 5844 раз)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 255
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: DHCP из-под DHCP - не соображу как
« Ответ #15 : 08.01.2009 02:50:44 »
Да прописать в конфиге и всё. У меня его под рукой нету. На работе так настроил.

Оффлайн jedi63

  • Давно тут
  • **
  • Сообщений: 43
Re: DHCP из-под DHCP - не соображу как
« Ответ #16 : 08.01.2009 03:47:19 »
немного проблемка непонятна... eth1 смотрит в сеть провайдера 10.x.x.x, eth0 в локалку 192.168.x.x, если нужно просто раздать инет, можно назначить ручками на всех машинах адрес шлюза этот адрес сервера 192.168.x.x, и включить форвардинг
vim /etc/net/sysctl.conf
и установить
net.ipv4.ip_forward = 1
в единицу
врубить маскарадинг
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
тогда пользователи сети 192.168.x.x смогут достучаться до сети провайдера, если в интернет выход через vpn, то указать маскарадинг через его интерфейс, что то типа
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Если нужно сделать раздачу по dhcp, то как пример
vim dhcpd.conf

ddns-update-style ad-hoc;
option domain-name-servers <dns server прова >;
default-lease-time 86400;
max-lease-time 604800;
authoritative;

#сеть прова
subnet 10.1.1.0 netmask 255.255.255.192 {
}

#локалка
subnet 192.168.1.0 netmask 255.255.255.0 {
        range 192.168.1.70 192.168.1.100;
        option subnet-mask      255.255.255.0;
        option broadcast-address 192.168.1.255;
        option routers          192.168.1.1;

}

Оффлайн Олег

  • Начинающий
  • *
  • Сообщений: 13
    • Email
Re: DHCP из-под DHCP - не соображу как
« Ответ #17 : 08.01.2009 11:57:14 »
Да прописать в конфиге и всё. У меня его под рукой нету. На работе так настроил.
ЧТО прописАть в конфиге? Именно это я и спрашиваю.
Как я уже писАл сюда, взятый из И-Нета пример, включающий
interface=eth0
Альтовская сборка dnsmasq не принимает.
А указать IP-адрес обслуживать коий dnsmasq-у не следует
(но следует брать оттуда DNS) я не могу
ибо получаю его (IP-адрес) от провайдера по dhcp, динамический он, то бишь.

Оффлайн Олег

  • Начинающий
  • *
  • Сообщений: 13
    • Email
Re: DHCP из-под DHCP - не соображу как
« Ответ #18 : 08.01.2009 12:31:05 »
немного проблемка непонятна... eth1 смотрит в сеть провайдера 10.x.x.x, eth0 в локалку 192.168.x.x, если нужно просто раздать инет, можно назначить ручками на всех машинах адрес шлюза этот адрес сервера 192.168.x.x, и включить форвардинг
vim /etc/net/sysctl.conf
и установить
net.ipv4.ip_forward = 1
в единицу
врубить маскарадинг
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
тогда пользователи сети 192.168.x.x смогут достучаться до сети провайдера, если в интернет выход через vpn, то указать маскарадинг через его интерфейс, что то типа
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Если нужно сделать раздачу по dhcp, то как пример
vim dhcpd.conf

ddns-update-style ad-hoc;
option domain-name-servers <dns server прова >;
default-lease-time 86400;
max-lease-time 604800;
authoritative;

#сеть прова
subnet 10.1.1.0 netmask 255.255.255.192 {
}

#локалка
subnet 192.168.1.0 netmask 255.255.255.0 {
        range 192.168.1.70 192.168.1.100;
        option subnet-mask      255.255.255.0;
        option broadcast-address 192.168.1.255;
        option routers          192.168.1.1;

}

"Раздать ручками" - не катит ибо среди машин есть и ноуты, кои и в других местах
приходится подключать по DHCP. Особенно это не катит еще и потому, что аналогичную
операцию (локальную раздачу) мне предстоит проделать и на работе, где точно будут регулярно
подключаться приносимые ноуты, а ожидать/требовать от их юзеров "вручную" перенастраивать
сетевые соединения - ну сами понимаете, нереально. Да и некультурно, в конце концов.

Также не проходит указать в конфиге  <dns server прова > - я ж и его получаю по DHCP,
динамически то бишь. И гарантий, что ни домашний, ни действующий на работе провайдеры
их не поменяют мне никто не давал, однако.

Аналогично не понимаю всей простоты предложения
#сеть прова
subnet 10.1.1.0 netmask 255.255.255.192 {
}

ведь 10.1.1.0 здесь ИМХО IP-адрес моей И-Нет сетевухи, так?
Но как же я его пропишу в конфиге, ежели он опять-таки динамический?
Ей-Богу не понимаю, уж простите.

ЗЫ Кстати, в данный момент он = 10.10.54.136,
а Mask:255.255.224.0, так что и с указанием в конфиге netmask-а
будут те же проблемы что и с subnet ("динамичность").
Хотя, надеюсь, этот параметр (netmask) они меняют редко.
Но думается существует таки способ сделать все чисто,
без "соплей" (ручного занесения текущих значений динамически раздаваемых
параметров в конфиги) и хотелось бы именно его и реализовать.


Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 255
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: DHCP из-под DHCP - не соображу как
« Ответ #19 : 08.01.2009 12:59:00 »
1 Смотрите /usr/share/doc/dnsmasq
2 Странно, почему у вас не воспринимает - у меня воспринимает, только у меня там lan0 прописан, но из=за этого не должно быть.
Вы киньте ваш конфиг - может там ошибка у вас, и заодно вывод на сервере

# ip a
 

Оффлайн Олег

  • Начинающий
  • *
  • Сообщений: 13
    • Email
Re: DHCP из-под DHCP - не соображу как
« Ответ #20 : 08.01.2009 13:39:32 »
1 Смотрите /usr/share/doc/dnsmasq
2 Странно, почему у вас не воспринимает - у меня воспринимает, только у меня там lan0 прописан, но из=за этого не должно быть.
Вы киньте ваш конфиг - может там ошибка у вас, и заодно вывод на сервере

# ip a
 

Было в dnsmasq.conf
dhcp-range=net:Home,192.168.0.100,192.168.0.250,255.255.0.0,192.168.0.0,infinite
interface=eth0
except-interface=eth1
server=192.168.0.2@eth1
dhcp-option=42,0.0.0.0
dhcp-option=19,1           # option ip-forwarding on

Как результат - выводилось сообщение:
# service dnsmasq start
Starting dnsmasq service:
dnsmasq: unknown interface eth0

Стало:
dhcp-range=net:Home,192.168.0.100,192.168.0.250,255.255.0.0,192.168.0.0,infinite
#interface=eth0
except-interface=eth1
#server=192.168.0.2@eth1
dhcp-option=42,0.0.0.0
dhcp-option=19,1           # option ip-forwarding on

Результат: - запускается! (т.е. в except-interface он все понимает ???)

Далее:
#  ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:1a:4d:41:b8:5d brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:40:f4:54:11:a2 brd ff:ff:ff:ff:ff:ff
    inet 10.10.54.136/19 brd 10.10.63.255 scope global eth1
4: wifi0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 199
    link/ieee802.11 00:11:95:fa:a2:76 brd ff:ff:ff:ff:ff:ff
5: ath0: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue
    link/ether 00:11:95:fa:a2:76 brd ff:ff:ff:ff:ff:ff



Текущее состояние дел.

На "сервере" все запускается без возражений, но ни один из подключаемых компов
не DHCP-тся. По 12-й консоли видно, что аппаратно подключение воспринимается,
подключаемый клиент (при запуске dhcpcd, по крайней мере) запрос посылает, но реакции "сервера"
не видно. Ни на его 12-й, ни на клиентской. При загрузке (клиента) тоже не ловится.
Такие вот дела.

Да, насчет /usr/share/doc/dnsmasq-2.41 - спасибо, приступил к изучению.
Допрежь я все man-ами пользовался и И-Нетом.

Оффлайн Олег

  • Начинающий
  • *
  • Сообщений: 13
    • Email
Re: DHCP из-под DHCP - не соображу как
« Ответ #21 : 09.01.2009 00:02:56 »
<skip>
Вы киньте ваш конфиг - может там ошибка у вас, и заодно вывод на сервере
 
В дополнение к ранее посланному:
добавил в dnsmasqconf

dhcp-mac=inet,00:40:F4:54:11:A2 #eth1
dhcp-ignore=inet
log-dhcp #Debug

(Здесь 00:40:F4:54:11:A2 - MAC адрес карты соединенной с провайдером)

И получаю в messages:

Jan  8 23:24:18 av656187 dnsmasq[12641]: started, version 2.41 cachesize 150
Jan  8 23:24:18 av656187 dnsmasq[12641]: compile time options: IPv6 GNU-getopt ISC-leasefile no-DBus no-I18N TFTP
Jan  8 23:24:18 av656187 dnsmasq[12641]: DHCP, IP range 192.168.0.100 -- 192.168.0.250, lease time infinite
Jan  8 23:24:18 av656187 dnsmasq[12641]: reading /etc/resolv.conf
Jan  8 23:24:18 av656187 dnsmasq[12641]: using nameserver 217.10.44.35#53
Jan  8 23:24:18 av656187 dnsmasq[12641]: using nameserver 217.10.36.5#53
Jan  8 23:24:18 av656187 dnsmasq[12641]: using nameserver 217.10.32.4#53
Jan  8 23:24:18 av656187 dnsmasq[12641]: using nameserver 217.10.39.4#53
Jan  8 23:24:18 av656187 dnsmasq[12641]: read /etc/hosts - 1 addresses


а после принудительного запуска dhcpcd на клиенте:
Jan  8 23:38:33 av656187 dnsmasq[12641]: no address range available for DHCP request via eth0

И чем это dnsmasq-у address range не угодил?
Поскольку dnsmasq его вывел а лог, значит синтаксис верен. Что же еще?