Я установил isc-dhcp-сервер в Ubuntu 12.10 и пытаюсь настроить DHCP-сервер на головном узле для шести рабочих компьютеров в локальной сети. Головной узел сам по себе является клиентом DHCP, получающим IP-адрес 192.168.20.1 (на eth0) от другого компьютера в сети.
Переадресация IPv4 IP включена на головном узле. В /etc/sysctl.conf была добавлена следующая строка:
net.ipv4.ip_forward = 1
Следующие правила установлены в /etc/rc.local:
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE
Кроме того, INTERFACES="eth0"
устанавливается в /etc /default /isc-dhcp-server.
Файл dhcpd.conf содержит (на данный момент в файле только один рабочий компьютер):
ddns-update-style none;
default-lease-time 3600;
max-lease-time 7200;
authoritative;
subnet 192.168.20.0 netmask 255.255.255.0 {
range 192.168.20.2 192.168.20.200
host hostName {
hardware ethernet macOfHost;
fixed-address 192.168.20.20;
}
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.20.255;
option routers 192.168.20.1;
}
Рабочий узел фактически получает IP-адрес 192.168.20.20, но у него нет подключения к Интернету. Пинг до 192.168.20.1 успешен, так же как пинг к компьютеру, который служит сервером DHCP для головного узла (пинг к 192.168.1.1). Кажется, проблема не связана с DNS, так как сбой проверки связи с IP-адресом (например, 8.8.4.4).
Обновить
Топология сети выглядит следующим образом. Есть коммутатор, соединяющий компьютер (с доступом в Интернет и работающий DHCP-сервер, IP-адрес 192.168.1.1) и 7 другими компьютерами. Один из этих 7 компьютеров получает IP-адрес от компьютера 192.168.1.1. Получаемый IP-адрес - 192.168.20.1, и интернет на этом компьютере работает нормально. Теперь у нас есть DHCP-сервер, работающий на 192.168.20.1 для обеспечения доступа в Интернет к другим 6 компьютерам, но это не удается. Они получают IP-адреса, но не имеют доступа в Интернет. Нам не разрешается изменять что-либо на узле 192.168.1.1, поэтому должна быть осуществима работа интернета с этой настройкой.
Кто-нибудь знает, в чем может быть проблема?