You are on page 1of 24

Мрежни протоколи

Предавање 4
NAT, DHCP, ARP

д-р Димитар Богатинов, вон. проф.


NAT, DHCP, ARP 1

NAT, DHCP, ARP 2

д-р Димитар Богатинов, вон. проф 1


Решавање на проблемот со недостигот на
Интернет адреси

Пристапи кон решавање на проблемот со недостигот


на Интернет адреси
• Користење на приватни адреси кои при излез од
приватната мрежа користат NAT (Network Address
Translation)
• Динамичко доделување на адреси со помош на
DHCP (Dynamic Host Configuration Protocol)

NAT, DHCP, ARP 3

Транслација на адреси
• Привремено решение за недостатокот на јавни IP
адреси е да се користат приватни адреси
• Помал број на јавни адреси се користи за замена на
приватните адреси на излезот од локалната мрежа
• За тоа се користи програмска опрема NAT (Network
Address Translation)
• На упатувачот на излез на мрежата
• На одделен уред

NAT, DHCP, ARP 4

д-р Димитар Богатинов, вон. проф 2


Како функционира транслацијата?
NAT
Приватна
Интернет
мрежа

• Кога хост со приватна адреса сака да комуницира со


надворешен хост, пакетите мора да поминуваат низ
уредот каде се прави транслација
• Приватната адреса се заменува со јавна за појдовните
пакети, а јавната со приватна за дојдовните
• Бројот на јавни адреси најчесто е многу помал од
приватните адреси
NAT, DHCP, ARP 5

Илустрација на работата на NAT


Изв. адреса Дест. адреса Изв. адреса. Дест. адреса
10.1.1.1 193.1.1.1 14.38.1.1 193.1.1.1
Пред NAT После NAT
Изворен пакет Изворен пакет
Дестинациски хост
Локален
хост Интернет
10.1.1.1 NAT (14.38.1.1) 193.1.1.1.
Дест. адреса. Изв. адреса Дест. адреса. Изв. адреса
10.1.1.1 193.1.1.1 14.38.1.1 193.1.1.1
После NAT Пред NAT
Повратен пакет Повратен пакет

NAT ја менува адресата во IP заглавието


NAT, DHCP, ARP 6

д-р Димитар Богатинов, вон. проф 3


NAT - Терминологија
• Внатрешна локална адреса (Inside
local address) Заглавје внатрешна IP
• Адреса на изворот која е Изворна адреса Дестинациска адреса
приватна
• Внатрешна глобална адреса
(Inside global address) 10. 1. 1. 1 193. 1. 1. 1
• Адреса на изворот која е јавна Внатрешна лок. адреса Надворешна лок. адреса
• Надворешна локална адреса NAT
(Outside local address) Заглавје надворешна IP
• Адреса на одредиштето која е
јавна Изворна адреса Дестинациска адреса
• Надворешна глобална адреса
(Outside global address) 14. 38. 1. 1 193. 1. 1. 1
• Адреса на одредиштето која е
јавна Внатрешна глоб. адреса Надворешна глоб. адреса

NAT, DHCP, ARP 7

Видови транслации
• Статички NAT
• Еднозначно пресликување од приватни во јавни адреси  градење на
табела – нема штедење
• Погодно за сервери (клиентот ја почнува комуникацијата и треба да ја
има адресата на серверот)
• Динамички NAT
• Една јавна адреса може да се додели на повеќе приватни адреси, но во
различно време.
• PAT (Port Address Translation) или Dynamic NAT со overload или
Masquerading
• Се користи само една јавна адреса за повеќе приватни адреси  се
користи портата на изворот

NAT, DHCP, ARP 8

д-р Димитар Богатинов, вон. проф 4


Табели на транслација кај NAT

Inside local Inside global


Address Address
• Статички и динамички NAT 172.18.3.1 25.8.3.1
172.18.3.2 25.8.3.2
• PAT ... ...

Inside local Inside local Inside global Outside Transport


address Port address Port Protocol

172.18.3.1 1400 25.8.3.2 80 TCP


172.18.3.2 1401 25.8.3.2 80 TCP
... ... ... ... ...

NAT, DHCP, ARP 9

NAT - Предности
• Заштедува адреси
• Овозможува лесна миграција од еден ISP (Интернет
сервис провајдер) кај друг
• Не е потребно да се менуваат адресите на системите во
локалната мрежа, само јавните адреси кај NAT ќе се
заменат
• Може да послужи за урамнотежување на оптоварувањето
на фарма од сервери
• Серверите добиваат приватни адреси
• NAT служи како прокси за доделување на побарувањата
до серверите со round-robin систем
NAT, DHCP, ARP 10

10

д-р Димитар Богатинов, вон. проф 5


NAT - Недостатоци
• Перформансите се полоши
• Ако се промени адресата на изворот потребно е повторно да
се пресмета checksum во IP заглавието
• Ако се промени портата се пресметува и ТСР checksum
• Во случај на спојување на две мрежи со исти приватни
адреси, потребно е ново адресирање
• Проблем при фрагментација на пакетите
• Се нарушува основниот еnd-to-end принцип кај Интернет
и тоа може да доведе до проблеми кај одредени
апликации
NAT, DHCP, ARP 11

11

NAT, DHCP, ARP 12

12

д-р Димитар Богатинов, вон. проф 6


Динамичко доделување на адреси DHCP
• Наместо адресата да се доделува, таа се дава под
наем за време додека тоа е потребно
• Истата адреса може да се користи од друга
машина кога тоа е потребно
• IP адресите и другите параметри ги доделува
сервер
• Ова е погодно затоа што ги ослободува
администраторите на мрежата од досадна работа

NAT, DHCP, ARP 13

13

Елементи за конфигурација
• Секој ентитет поврзан на Интернет треба да
ја знае
• Своја IP адреса
• Маска (subnet mask)
• Адреса на најблискиот упатувач (default
gateway)
• Адреса на својот сервер за имиња (DNS
сервер)
NAT, DHCP, ARP 14

14

д-р Димитар Богатинов, вон. проф 7


Статичко доделување
• Статичко доделување
• Администраторот или корисникот ја внесува
адресата, маската, најблискиот упатувач и
серверот на имиња
• Досадна и голема работа ако се работи за голема
мрежа
• Нема проблеми со серверот на имиња затоа што
имињата секогаш соодветствуваат на истите
адреси
NAT, DHCP, ARP 15

15

Dynamic Host Configuration Protocol (DHCP)


• DHCP – Протокол за динамичко доделување на
адреси

• Негови претходници
• RARP – обратен АRP
• BOOTP
• DHCP е многу сличен на BOOTP

• Користи UDP како транспортен протокол


NAT, DHCP, ARP 16

16

д-р Димитар Богатинов, вон. проф 8


RARP (Reverse ARP)
• RARP работи слично на ARP
• Машината што бара IP адреса испраќа RARP request
• На пример станица без диск ќе испрати барање со IP адреса
на испраќач 0.0.0.0 и на одредиште 255.255.255.255. MAC
адресата на испраќач е адресата на неговиот посредник, а
на одредиштето МАС бродкаст адреса
• RARP серверот има табела на МАС и IP адреси и
одговара со соодветната IP адреса
• Не испраќа дополнителни информации – пр. default
gateway и DNS сервер
• Стара метода која се користела до 1985 г.
NAT, DHCP, ARP 17

17

BOOTP (BOOTstrap Protocol)


• Протокол за IP конфигурација на машини без диск (се
користела до 1995г.)
• До секој ентитет на Интернет ги испраќа следниве
параметри
• IP адреса, маска, IP адреса на default gateway, IP адреса на DNS
сервер
• BOOTP функционира слично на DHCP со тоа што не
работи со динамички адреси
• Тој работи со табела во која на една МАС адреса соодветствува
една IP адреса

NAT, DHCP, ARP 18

18

д-р Димитар Богатинов, вон. проф 9


Задачи на DHCP серверот

• Позајмува адреси (ги доделува адресите кои


не се користат)
• Доделува статичка адреса (позајмување на
неодредено време) доколку е тоа потребно
• Можно е да има повеќе DHCP сервери, и
DHCP серверот не мора да биде на иста
мрежа со клиентот

NAT, DHCP, ARP 19

19

Како работи DHCP?


• Кога клиентот се подига тој испраќа порака за пронаоѓање на
DHCP серверот користејќи ја локалната броадкаст адреса
• Ако постои упатувач помеѓу клиентот и серверот, тој нормално
ги запира бродкаст пораките. Затоа тој мора да се конфигурира
така што да ги проследува овие пораки
• Кога DHCP серверот ќе ја добие пораката, тој одговара со
понуда за IP адреса
• Машината ја прифаќа адресата и одговара со бродкаст порака
со која ги известува сите за тоа
• DHCP серверот потврдува дека адресата е доделена

NAT, DHCP, ARP 20

20

д-р Димитар Богатинов, вон. проф 10


DHCP – Илустрација
DHCP Клиент DHCP Сервери

IP Lease Request

IP Lease Offer

IP Lease Selection

IP Lease
Acknowledgment

NAT, DHCP, ARP 21

21

Видови на пораки кај DHCP


Број Тип на порака Намена
1 DHCPDISCOVER Да се открие DHCP серверот
2 DHCPOFFER Да се понуди адреса
3 DHCPREQUEST Да се побара адреса
4 DHCPDECLINE Да се одбие адреса
5 DHCPACK Да се потврди адресата
6 DHCPNAK Да не се потврди адресата
7 DHCPRELEASE Да се ослободи адресата
8 DHCPINFORM Да се испратат информации
NAT, DHCP, ARP 22

22

д-р Димитар Богатинов, вон. проф 11


DHCP – Операција 1
DHCP Клиент
00:a0:24:71:e4:44 DHCP Сервер
DHCPDISCOVER
Sent to 255.255.255.255

DHCP Discover

DHCP Сервер
DHCP Клиент
00:a0:24:71:e4:44 DHCPOFFER
DHCP Сервер

DHCP Понуда
DHCPOFFER

DHCP Сервер
NAT, DHCP, ARP 23

23

DHCP Операција 1 (прод.)


DHCPDISCOVER
Source IP Address = 0.0.0.0 Упатувачот треба да биде конфигуриран
Dest. IP Address = 255.255.255.255 со DHCP релеј функција
Hardware Address = 08004....

IP Router

DHCPOFFER
Source IP Address = 131.107.3.24
Dest. IP Address = 255.255.255.255
Offered IP Address = 131.107.8.13
Client Hardware Address = 08004...
Subnet Mask = 255.255.255.0
DHCP Клиент Length of Lease = 72 hours DHCP Сервер
Server Identifier = 131.107.3.24

NAT, DHCP, ARP 24

24

д-р Димитар Богатинов, вон. проф 12


DHCP Операција 2
DHCP Request with ACK

Штом добие потврда за користење на адресата клиентот


може да почне да ја користи.
00:a0:24:71:e4:44 DHCP Сервер
DHCPREQUEST

DHCPACK

DHCP Клиент

DHCP Сервер

NAT, DHCP, ARP 25

25

DHCP Операција 2 (прод.)


DHCPREQUEST
Source IP Address = 0.0.0.0
Dest. IP Address = 255.255.255.255
Hardware Address = 08004....
Requested IP Address = 131.107.8.13
Server Identifier = 131.107.3.24

IP Рутер

DHCPACK
Source IP Address = 131.107.3.24
Dest. IP Address = 255.255.255.255
Offered IP Address = 131.107.8.13
Client Hardware Address = 08004...
Subnet Mask = 255.255.255.0
Length of Lease = 72 hours
DHCP Клиент Server Identifier = 131.107.3.24 DHCP Сервер
DHCP Option: Router = 131.107.8.1
NAT, DHCP, ARP 26

26

д-р Димитар Богатинов, вон. проф 13


DHCP – Други операции
DHCP Request with ACK DHCP Клиент
00:a0:24:71:e4:44 DHCP Сервер
Обновување на позајмената DHCPREQUEST

адреса (се праќа кога 50% од DHCPACK

периодот на позајмување
поминал)
(ipconfig/renew) DHCP Сервер
Кога DHCP серверот ќе испрати
DHCPNACK, тогаш адресата се DHCP Клиент
ослободува. 00:a0:24:71:e4:44 DHCP Сервер
DHCPRELEASE

DCHP Release
Овде DHCP клиентот ја ослободува IP
адресата
(ipconfig/release) DHCP Сервер
NAT, DHCP, ARP 27

27

NAT, DHCP, ARP 28

28

д-р Димитар Богатинов, вон. проф 14


NAT, DHCP, ARP 29

29

MAC Адреси
• Адреси што се користат на податочно ниво
• При пренос на контролните информации се
сместени во заглавието на податочно ниво (извор
и одредиште)
• Типови на MAC адреси
• Уникаст
• Бродкаст
• Мултикаст
NAT, DHCP, ARP 30

30

д-р Димитар Богатинов, вон. проф 15


Адресниот простор
• Хиерархиски, но без агрегација (сумирање)
• Се постигнува единственост на адресата
• Не е погодно за упатување затоа што хиерархијата не
придонесува за сумирање
• Овие адреси не покажуваат каде е сместена направата која ја
користи адресата
• Овие адреси ја идентификуваат картичката, а со тоа и
направата на која таа е сместена
• Затоа можат да се сметаат за имиња, иако се нарекуваат
адреси
NAT, DHCP, ARP 31

31

IP наспроти MAC адресите


• За да се стигне до одредена IP адреса пакетите се
преместуваат од еден упатувач до друг
• Ова е можно поради географската хиерархија на IP
адресите.
• За да се стигне до одредена MAC адреса изворот
мора да биде на истата мрежа како и одредиштето
• Потребно е да се најде која МАС адреса
соодветствува на одредена IP адреса

NAT, DHCP, ARP 32

32

д-р Димитар Богатинов, вон. проф 16


The Address Resolution Protocol (ARP)
• ARP е потребен секогаш кога еден хост треба да
испрати порака на некој друг хост на истата мрежа
• Со ARP се обезбедува флексибилност со оглед на тоа
што посредниците во кои се вградени МАС адресите се
менуваат, а машините се преместуваат од едно место
на друго
• ARP ја пронаоѓа МАС адресата или физичката
адреса за дадена IP адреса

NAT, DHCP, ARP 33

33

ARP и RARP
• ARP и RARP (Reverse ARP) се протоколи кои прават
транслација на IP адреса во MAC адреса и обратно

ARP Ethernet MAC


IP address
address
(32 bit)
(48 bit)
RARP

NAT, DHCP, ARP 34

34

д-р Димитар Богатинов, вон. проф 17


Како работи ARP?
• Машината што има потреба од МАС адреса за
дадена IP адреса испраќа бродкаст порака во која
го бара системот со соодветната IP адреса (ARP
request).
• Сите системи на мрежата ја добиваат оваа порака
• Само системот што ја има бараната IP адреса
испраќа повратна порака
• Повратната порака се испраќа до системот што ја
барал адресата
NAT, DHCP, ARP 35

35

ARP кеш
• МАС и IP адресите што се добиваат од друг систем се
чуваат во таканаречен ARP кеш одредено време
• Ова е потребно затоа што комуникацијата продолжува
во двете насоки
• На овој начин не е потребно да се испраќаат
дополнителни ARP пораки
• Се добива на време
• Се штеди преносниот медиум
• По извесно време ARP кешот се губи
NAT, DHCP, ARP 36

36

д-р Димитар Богатинов, вон. проф 18


Ја праќам мојата
физичка адреса, и ја
кеширам физичката
адреса на
Дали ја имам 192.168.10.10
192.168.10.10 физичката
адреса за 192.168.10.40 192.168.10.50 3
192.168.10.50

Да Не

2 Кој ја има .50?

4 .50 е 00:00:c0:c8:b3:27

5 Податоци до 00:00:c0:c8:b3:27
NAT, DHCP, ARP 37

37

Карактеристики на ARP
• Работи на мрежно ниво како помошник на IP (но е
поблиску до податочното ниво)
• ARP пакетот содржи 9 полиња
• Hardware type
• Protocol type
• Hardware address length
• Protocol address length
• Message type
• Source hardware address
• Source IP address
• Destination hardware address
• Destination IP address
NAT, DHCP, ARP 38

38

д-р Димитар Богатинов, вон. проф 19


Формат на ARP пакетот
Ethernet II header

Destination Source Type


address address 0x8060
ARP Request or ARP Reply Padding CRC

6 6 2 28 10 4

Hardware type (2 bytes) Protocol type (2 bytes)


Hardware address Protocol address
Operation code (2 bytes)
length (1 byte) length (1 byte)
Source hardware address*

Source protocol address*

Target hardware address*

Target protocol address*

* Note: The length of the address fields is determined by the corresponding address length fields
NAT, DHCP, ARP 39

39

Местото на АRP во TCP/IP моделот


Application
SMTP FTP HTTP
Presentation
TELNET DNS
Session
Application

Transport TCP UDP Transport

Network ICMP IGMP


Network
IP
ARP DHCP
Physical
Data Link
Protocols defined by the underlying
networks
Physical
NAT, DHCP, ARP 40

40

д-р Димитар Богатинов, вон. проф 20


Испраќање пакет на иста мрежа
DNS server for itm.se
Happy Sneezy
Domain Sleepy
itm.se
172.16.5.4
172.16.5.1 172.16.5.2 172.16.5.3

• Happy само што е подигнат (нема ARP кеш), и сака да му


испрати пакет на sleepy (ping sleepy).
• Тој ја знае својата IP адреса и IP адресата на sneezy што е DNS
сервер и IP адресата на R што е најблизок упатувач

NAT, DHCP, ARP 41

41

1. Happy користи ARP request за да ја добие адресата на Sneezy


2. Sneezy испраќа ARP response
3. Happy испраќа DNS побарување до Ѕneezy за да ја добие IP
адресата на Sleepy
4. Sneezy испраќа одговор со IP адресата на Sleepy
5. Кога ќе ја добие IP адресата на Sleepy, Happy ја користи
маската за да провери дали Sleepy е на истата мрежа
6. Кога ќе види дека и двете се на иста мрежа Happy испраќа
ARP request за да ја добие МАС адресата на Sleepy
7. Sleepy испраќа ARP response
8. Happy го испраќа пакетот со МАС адресата на Ѕleepy

NAT, DHCP, ARP 42

42

д-р Димитар Богатинов, вон. проф 21


NAT, DHCP, ARP 43

43

Испраќање пакет на различна мрежа

H0 H1 H4 H5 H8 H9

E6 E7
I0 E0 I1 E1 I4 E4 I5 E5 I8 E8 I9 E9

LAN 1
R1 LAN 2 R2 LAN 3
I10 I11 I7
I6
E2 E3

Кои се МАС и IP адресите на пакетите што патуваат низ оваа


мрежа? Претпоставете Н4 дава команда: ping H9. Што ќе се случи?

NAT, DHCP, ARP 44

44

д-р Димитар Богатинов, вон. проф 22


Други карактеристики на ARP
• Што ќе се случи ако се бара адреса за непостоечки
хост?
• ARP ќе ја повтори бродкаст пораката неколку пати
зголемувајќи го времето на чекање на одговор. Потоа
ќе престане.
• Што ако ARP испрати бродкаст порака за сопствената IP
адреса?
• Одговорот на останатите машини е како да е испатена
обична ARP порака (request)
• Ова е корисно за проверка дали одредена адреса е
доделена
NAT, DHCP, ARP 45

45

Proxy ARP
• Еден систем (најчесто упатувач) ги чува МАС адресите за други
системи и одговара наместо нив
• Погодно за врски на далеку преку access router

H0 H1 H4 H5

I0 E0 I1 E1 I4 E4 I5 E5
H0 asks R1 for MAC
address of H4 LAN 1
R1 LAN 2
I10 I11
E2 E3
R1 can provide an answer since it has this MAC
address in its cache

NAT, DHCP, ARP 46

46

д-р Димитар Богатинов, вон. проф 23


Gratuitous ARP
• ARP се користи за да системот провери дали IP адресата
е доделена
• Погодно кога IP адресата се внесува рачно
• Gratuitous ARP проверува дали адресата е доделена
и дава информација на ОЅ да му даде порака на
корисникот
• Погоден и за DHCP
• Серверот проверува дали некоја адреса е доделена
пред да ја додели на некој клиент
NAT, DHCP, ARP 47

47

Благодарам на вниманието !!!

Прашања?

48

д-р Димитар Богатинов, вон. проф 24

You might also like