Школьный сервер. Часть 7. Раздача интернета и DHCP сервер.

Что мы уже имеем:

  1. Сервер с установленной Ubuntu Server 12.04 64 bit
  2. Webmin

Естественно, первое, что должен делать сервер, это раздавать интернет. Ну и поскольку парк нашей школы насчитывает порядка 100 ПК, плюс сеть WiFi, еще нужен DHCP. А чтобы еще и иметь локальный веб-сайт, нужен свой DNS.

Во-первых, необходимо разобраться с сетевыми картами.

Делается это правкой файла

/etc/network/interfaces

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

Поскольку коммутатор вполне себе способен выдавать адрес через DHCP, настройка второй сетевой карты заключается в указании. что IP адрес получается автоматически.

Первую же карту необходимо настроить в соответствии с выбранной адресацией локальной сети.

Я выбрал диапазон адресов 192.168.1.1 – 192.168.1.255, поэтому сервер будет иметь первый адрес из этого диапазона. Маска подсети 255.255.255.0, что позволит иметь до 255 компьютеров. Сейчас (спустя месяц после настройки), задумался, достаточно ли такого количества, поскольку к сети WiFi подключаются школьники, и в пиковые моменты может быть и побольше клиентов. Впрочем, пока ошибок в логах DHCP не замечал.

Итоговый вид файла:

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.1.1
netmask 255.255.255.0

где eth0 – карта, смотрящая в коммутатор,

eth1 – в локальную сеть.

Для раздачи IP адресов и DNS можно использовать различные пакеты. Но мне показалось более удобным использовать один – dnsmasq

Установить его можно командой

apt-get install dnsmasq

конфиг моего dnsmasq с комментариями:

[spoiler] 

#адрес собственно сервера
server=/localnet/192.168.1.1
# указание, какой интерфейс смотрит в локальную сеть
interface=eth1
# указываем, что по второму интерфейсу DHCP не требуется
no-dhcp-interface=eth0
listen-address=192.168.1.1
# имя локального домена
domain=school153
# сервер mx-записей (для СЭД Zimbra)
mx-host=school153.ru,mail.school153.ru,10
# Указание диапазона DHCP и времени аренды адресов
dhcp-range=192.168.1.10,192.168.1.254,12h
# Дополнительная опция, указание файла настроек прокси через DHCP
dhcp-option=252,http://wpad.school.lan/wpad.pac

#Список адресов, которым приписывается кокретный IP-адрес
#виртуальный веб-сервер
dhcp-host=mac,192.168.1.2,site
dhcp-host=mac,192.168.1.116,teacher-208
#тарелка 208
dhcp-host=mac,192.168.1.11,unifi208
#тарелка 
dhcp-host=mac,192.168.1.12,unufi204
#тарелка 319
dhcp-host=mac,192.168.1.13,unufi319
#тарелка физика 217
dhcp-host=mac,192.168.1.14,unufi217
#тарелка 212
dhcp-host=mac,192.168.1.15,unufi212
#тарелка 202
dhcp-host=mac,192.168.1.16,unufi202
#zimbra virtual machine
dhcp-host=mac,192.168.1.6,mail.school153.ru
# файл, в котором хранится информация о клиентах
dhcp-leasefile=/var/lib/misc/dnsmasq.leases
#доверять данному серверу
dhcp-authoritative
#логи
# Log lots of extra information about DHCP transactions.
log-dhcp
log-queries
log-facility=/var/log/dnsmasq.log

 

[/spoiler]

Следующее, что нужно сделать, это разрешить перенаправление пакетов. Делается это путем раскомментирования строчки

net.ipv4.ip_forward=1

в файле

nano /etc/sysctl.conf

Далее, необходимо добавить правила в IPTABLES.

nano /etc/rc.local

Правила:

iptables -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth0 -j REJECT
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

В итоге, получаем локальную сеть с DHCP и DNS сервером.

Клиенты получают все настройки автоматически.

комментария 2

    • Случайно попал не в тот раздел. Сейчас все должно быть нормально.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.