Настройка DHCP маршрутизатора на базе Ubuntu/Linux

Автор: Гость | от 2016 » Август » 26 | посмотрело: 255

0

DHCP (англ. Dynamic Host Configuration Protocol — протокол динамической настройки узла) — сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Данный протокол работает по модели «клиент-сервер».

Для автоматической конфигурации компьютер-клиент на этапе конфигурации сетевого устройства обращается к так называемому серверу DHCP, и получает от него нужные параметры. Сетевой администратор может задать диапазон адресов, распределяемых сервером среди компьютеров. Это позволяет избежать ручной настройки компьютеров сети и уменьшает количество ошибок. Протокол DHCP используется в большинстве сетей TCP/IP.

Итак, для начала настроим подключение к интернету. Откроем файл с настройками:

Код
$ sudo nano /etc/network/interfaces

и укажем там настройки подключения:

Код
auto lo eth0 eth1
iface lo inet loopback

iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx

iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0

Все конечно зависит от вашего провайдера («xxx.xxx.xxx.xxx» надо будет заменить на нужные для подключения значения), а так же условимся, что «входить» в Интернет будет устройство eth0, а «раздаваться» пользователям через eth1.

А так же, в файле /etc/network/interface нужно указать адреса DNS-северов, указав в нем адреса, которые вам выдал провайдер, либо любые другие адреса DNS-серверов:

Код
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
dns-nameservers 8.8.8.8
dns-nameservers 8.8.4.4

Сохраним все, что мы написали и перезагрузим сеть:

Код
$ sudo /etc/init.d/networking restart

Проверить, что все в порядке, можно попинговав, например, сайт Google:

Код
$ ping -c 4 google.com

Теперь установим простенький DNS-сервер «dnsmasq» и настроим его:

Код
$ sudo apt-get install dnsmasq

И в файле /etc/dnsmasq.conf напишем в соответствующих строчках:

Код
listen-address=127.0.0.1, 192.168.0.1
dhcp-range=192.168.0.100,192.168.0.199,255.255.255.0,12h

Чтобы разрешить принимать DNS-запросы из нашей сети и раздавать IP-адреса в дапазоне от 192.168.0.100 до 192.168.0.199.

Еще можно закрепить за компьютерами определенные ip-адреса, исходя из mac-адреса, добавив в тот же файл:

Код
dhcp-host=xx:xx:xx:xx:xx:xx,yyy.yyy.yyy.yyy

где «xx:xx:xx:xx:xx:xx» — mac-адрес нужной машины, а «yyy.yyy.yyy.yyy» ip-адрес, который мы хотим забронировать за ней.

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

Код
$ cat /var/log/syslog | grep DHCPOFFER

Далее создадим файл, настраивающий трансляцию и сделаем его исполняемым:

Код
$ sudo touch /etc/nat
$ sudo chmod +x /etc/nat
$ sudo nano /etc/nat

Заполним его следующим содержанием:

Код
#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth0 -j REJECT

И добавим в конец файла /etc/network/interfaces строчку:

Код
post-up /etc/nat

Теперь еще раз перезапустим сеть и наш DNS-сервер:

Код
$ sudo /etc/init.d/networking restart
$ sudo /etc/init.d/dnsmasq restart

Теперь все готово.

Категория: Интернет

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться или войти на сайт под своим именем.
Всего комментариев: 0
avatar