artykuły
Powrót do listy artykułów

Temat artykułu: Konfiguracja DHCP na routerze
Tekst napisał Cisco_FAQ dnia 07-03-2006

DHCP

Co to są prywatne/niezarejestrowane adresy IP?

Na potrzeby przykładów, książek i innych opracowań IETF wydzielił z globalnej puli adresów IPv4 pewne zakresy, których nie przydzielono nigdzie w Internecie i nie powinny się one w nim pojawić (a jesli się już nawet pojawią, powinny zostać zignorowane lub odfiltrowane). Adresy te nazywane są prywatnymi, rzadziej niezarejestrowanymi.

Spis adresów aktualnie przydzielonych do celów testowych i na prywatny użytek, znajduje się w RFC 1918 (http://www.ietf.org/rfc/rfc1918.txt). Dla jasności, chodzi o adresy:

 10.0.0.0    - 10.255.255.255   (10.0.0.0/8)
 172.16.0.0  - 172.31.255.255   (172.16.0.0/12)
 192.168.0.0 - 192.168.255.255  (192.168.0.0/16)

UWAGA!: Pojęcie "adresy nieroutowalne" jest błędne - nie ma czegoś takiego. Każdy adres jest jak najbardziej routowalny, po prostu przeznaczeniem tego konkretnego zestawu adresów nie jest znalezienie się w Internecie.


Czy router może pełnić rolę serwera DHCP?

Tak, ale w przypadku routerów serii 1600, 1700, oraz niektórych linii Cisco IOS, możesz potrzebować funkcjonalności "Plus" - najlepiej skorzystaj z Feature Navigatora, zanim założysz, że posiadasz tą funkcję.

Serwer DHCP uruchamia się, definiując pule adresowe. Jeśli np. masz pojedynczą sieć i nie chcesz kojarzyć adresów IP z adresami MAC, możesz napisać:

router(config)# ip dhcp excluded-address 192.168.0.1
                Adres 192.168.0.1 nie zostanie przypisany - zwykle chodzi o
                zarezerwowanie adresu interfejsu routera
router(dhcp-config)# ip dhcp pool MojeDHCPLAN

                     Tworzymy pulę o nazwie MojeDHCPLAN
router(dhcp-config)# network 192.168.0.0 255.255.255.0
                     Przydzielamy adresy z puli 192.168.0.0/24 (za wyjątkiem
                     zarezerwowanego wyżej adresu 192.168.0.1)
router(dhcp-config)# default-router 192.168.0.1
                     Oprócz adresu IP dla stacji, serwujemy domyślną bramkę
                     (zwykle interfejs routera)
router(dhcp-config)# dns-server IP_serwera_DNS1 IP_serwera_DNS2 itp.
                     ...oraz od razu serwery DNS.

Jeśli natomiast chcesz konkretnej stacji/serwerowi przydzielić konkretny adres IP, możesz posłużyć się mapowaniem MAC-IP:

router(config)# ip dhcp pool SerwerPlikow
router(dhcp-config)# host 192.168.0.10 255.255.255.0
                     Adres 192.168.0.10 z maską /24 przydzielony zostanie...
router(dhcp-config)# client-identifier 000c.09cb.9813
                     ...hostowi z adresem MAC 00:0C:09:CB:98:13
router(dhcp-config)# default-router 192.168.0.1
                     Oprócz adresu IP dla stacji, serwujemy domyślną bramkę
                     (zwykle interfejs routera)
router(dhcp-config)# dns-server IP_serwera_DNS1 IP_serwera_DNS2 itp.

                     ...oraz od razu serwery DNS.

Jak przydzielić interfejsowi adres z serwera DHCP?

W definicji interfejsu należy podać po prostu:

router(config)# interface FastEthernet 0/0
router(config-if)# ip address dhcp


Jak przekazać dalej zapytania DHCP?

Wystarczy w zasadzie, na interfejsie podłączonym do sieci, w której znajduje się stacja pobierająca informacje z serwera DHCP wydać polecenie:

router(config)# interface FastEthernet 0/0
router(config-if)# ip helper-address IP_serwera_DHCP

...ale to włącza przekazywanie wielu rodzajów ruchu. Możesz to zablokować, ograniczając się tylko do DHCP/BOOTP w ten sposób:

router(config)# no ip forward-protocol udp tftp
router(config)# no ip forward-protocol udp dns
router(config)# no ip forward-protocol udp time
router(config)# no ip forward-protocol udp netbios-ns

router(config)# no ip forward-protocol udp tacacs
 ...i dla pewności, że jest włączone:
router(config)# ip forward-protocol udp bootpc