Zainstalowałem serwer isc-dhcp na Ubuntu 12.10 i próbuję skonfigurować serwer DHCP na węźle głównym dla sześciu komputerów roboczych w sieci lokalnej. Sam węzeł główny jest klientem DHCP odbierającym adres IP 192.168.20.1 (na eth0) z innego komputera w sieci.
Przekazywanie IP IPv4 jest włączone w węźle głównym. W pliku /etc/sysctl.conf dodano następujący wiersz:
net.ipv4.ip_forward = 1
Następujące reguły są ustawione w /etc/rc.local:
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE
Ponadto, INTERFACES="eth0"
jest ustawiony w / etc / default / isc-dhcp-server.
Plik dhcpd.conf zawiera (na razie tylko jeden komputer roboczy znajduje się w pliku):
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;
}
Węzeł roboczy skutecznie otrzymuje adres IP 192.168.20.20, ale nie ma połączenia z Internetem. Ping do 192.168.20.1 powiódł się, a także ping do komputera, który służy jako serwer DHCP dla węzła głównego (ping do 192.168.1.1). Problem nie wydaje się mieć nic wspólnego z DNS, ponieważ ping do adresu IP (takiego jak 8.8.4.4) nie powiedzie się.
Aktualizacja
Topologia sieci jest następująca. Jest przełącznik łączący komputer (z dostępem do Internetu i uruchomionym serwerem DHCP, adres IP 192.168.1.1) i 7 innych komputerów. Jeden z tych 7 komputerów otrzymuje adres IP z komputera 192.168.1.1. Otrzymywany adres IP to 192.168.20.1, a internet na tym komputerze działa prawidłowo. Teraz mamy serwer DHCP działający na 192.168.20.1, aby zapewnić dostęp do Internetu pozostałym 6 komputerom, ale to się nie powiedzie. Otrzymują adresy IP, ale nie mają dostępu do Internetu. Nie możemy modyfikować niczego w węźle 192.168.1.1, więc powinno być możliwe, aby Internet działał z tą konfiguracją.
Czy ktoś wie, na czym polega problem?
źródło
Odpowiedzi:
Wszystko działa teraz. Okazało się to problemem DNS; zmienianie
option routers
dooption routers 192.168.1.1
naprawiono problem. Pingi musiały zostać zablokowane gdzieś w sieci, ponieważ odpowiedzi nigdy nie dotarły, ale surfowanie w przeglądarce na konkretny adres IP było możliwe, co uświadomiło mi, że problemem był DNS. Dziękuję wszystkim za pomoc.źródło
Wygląda na to, że eth0 to Twój wewnętrzny interfejs. Jeśli tak jest, jaki jest twój zewnętrzny interfejs? Na serwerze „router” zewnętrzny interfejs, a nie wewnętrzny (który powinien przekazywać pakiety), musi mieć MASQUERADE.
źródło