Не всички устройства се показват в таблицата на arp. Синхронизиране на RARP транзакции. Протокол за възстановяване на адрес за връщане

По-рано се казваше, че портът или интерфейсът, през който рутерът е свързан към мрежа, се счита за част от тази мрежа. Следователно интерфейсът на рутера, свързан към мрежата, има същия IP адрес като мрежата (Фигура 6.12). Тъй като рутерите, както всяко друго устройство, получават и изпращат данни през мрежата, те също така изграждат ARP таблици, които съдържат съпоставяния на IP адреси към MAC адреси.

Фигура 6.11. RARP сървърът отговаря на IP заявка от работна станция с MAC адрес 08-00-20-67-92-89


Фигура 6.12. IP адресите се съпоставят с MAC адреси с помощта на ARP таблици.

Рутерът може да бъде свързан към множество мрежи или подмрежи. По принцип мрежовите устройства имат набори само от онези MAC и IP адреси, които се повтарят редовно. Накратко, това означава, че типично устройствосъдържа информация за устройствата на нейните собствена мрежа... В същото време много малко се знае за устройства извън тяхната собствена локална мрежа. В същото време рутерът изгражда таблици, описващи всички мрежи, свързани към него. В резултат на това ARP таблиците на рутери могат да съдържат MAC и IP адреси на устройства в повече от една мрежа (6.13). В допълнение към картите на съответствието на IP адресите с MAC адресите, таблиците на рутерите съдържат картографиране на портове (фиг. 6.14)

Какво се случва, ако пакет с данни достигне до рутер, който не е свързан към мрежата на местоназначението на пакета? В допълнение към MAC и IP адресите на устройствата от тези мрежи, към които е свързан този рутер, той съдържа и MAC и IP адресите на други рутери. Рутерът използва тези адреси, за да насочи данни към крайния получател (Фигура 6.15). Когато получи пакет, чийто адрес на дестинация не е в таблицата за маршрутизиране, маршрутизаторът препраща пакета до адресите на други рутери, които може да имат информация за хоста на местоназначението в своите таблици за маршрутизиране.



Фигура 6.14. Портовете също са изброени в таблицата за маршрутизиране.

Шлюз по подразбиране

Ако източникът се намира в мрежа с номер, който се различава от номера на мрежата на местоназначението и източникът не знае MAC адреса на получателя, тогава, за да достави данните на получателя, източникът трябва да използва услугите на рутер . Ако рутерът се използва по този начин, тогава той се извиква шлюз по подразбиране.За да използва услугите на шлюза по подразбиране, източникът капсулира данните, като поставя MAC адреса на рутера в него като MAC адрес на местоназначението. Тъй като източникът иска да достави данните до устройството, а не до рутера, заглавката използва IP адреса на устройството, а не рутера като IP адрес на местоназначението (Фигура 6.16). Когато рутерът получава данни, той премахва информацията на слоя на връзката, използвана в капсулирането. След това данните се предават към мрежовия слой, където се анализира IP адресът на местоназначението. След това рутерът сравнява IP адреса на дестинацията с информацията в таблицата за маршрутизиране. Ако рутерът открие съпоставяне на IP адреса на дестинацията към съответния MAC адрес и заключи, че мрежата на местоназначението е свързана към един от неговите портове, той капсулира данните, поставяйки информация за новия MAC адрес в тях и я предава на дестинация.



Фигура 6.15. Данните се препращат от рутера до местоназначението му


Фигура 6.16. IP адресът на местоназначението се използва за доставка на данни

Резюме

  • Всички устройства в локалната мрежа трябва да следят за ARP заявки, но само тези устройства, чийто IP адрес съвпада с IP адреса, съдържащ се в заявката, трябва да отговорят, като докладват своя MAC адрес на устройството, което е направило заявката.
  • Ако IP адресът на устройството съвпада с IP адреса, съдържащ се в ARP заявката, устройството отговаря, като изпраща своя MAC адрес до източника. Тази процедура се нарича ARP отговор.
  • Ако източникът не може да намери целевия MAC адрес в своята ARP таблица, той създава ARP заявка и я излъчва до всички устройства в мрежата.
  • Ако устройството не знае собствен IP адрес, той използва протокола RARP.
  • Когато устройството, създало RARP заявката, получи отговор, то копира своя IP адрес в кеш паметта, където този адрес ще се съхранява през цялата сесия.
  • Маршрутизаторите, както всяко друго устройство, получават и изпращат данни през мрежата, така че те също така създават ARP таблици, които съдържат съпоставяния на IP адреси към MAC адреси.
  • Ако източникът се намира в мрежа с номер, който се различава от мрежовия номер на местоназначението и източникът не знае MAC адреса на получателя, тогава, за да достави данните на получателя, източникът трябва да използва рутера по подразбиране шлюз.

Глава 7 Топологии

В тази глава:

  • Определение на понятието топология
  • Топология на шината, нейните предимства и недостатъци
  • Топология на звездата, нейните предимства и недостатъци
  • Външни терминатори
  • Активни и пасивни концентратори
  • Характеристики на разширената звездна топология, определение
  • дължини на кабелите за звездна топология и начини за увеличаване на размера на зоната, покрита от мрежа със звездна топология
  • Затихване

Въведение

Глава 6, „ARP и RARP“, обсъжда как устройствата в LAN използват ARP преди да изпратят данни до местоназначение и също така разглежда какво се случва, ако устройство в същата мрежа не знае адреса за контрол на достъпа до медиите. (MAC адрес) устройства в друга мрежа Тази глава обяснява топологиите, използвани за създаване на мрежи.

Топология

На местно компютърна мрежа(LAN) всички работни станции трябва да бъдат свързани помежду си.Ако файлов сървър е включен в LAN, той също трябва да бъде свързан към работните станции. Физическата диаграма, която описва структурата на локалната мрежа, се нарича топологияТази глава описва трите типа шинни топологии, "звезда" и "разширена звезда" (фиг. 71, 72)


Фигура 7.1. Топологията на шината е типична за Ethernet LAN, включително 10Base2 и 10BaseS


Фигура 7.2. Топологията на звездата е типична за мрежите Ethernet и Token Ring, които използват хъб, комутатор или повторител като център на мрежата.

Топология на шината

Топологията на шината е топология, при която всички устройства в локална мрежа са свързани към линейна мрежова среда за предаване на данни. Тази линейна среда често се нарича канал, шина или траса. Всяко устройство, напр работна станцияили сървър, независимо свързан към общ кабел за шина с помощта на специален конектор (фиг. 7.3). Кабелът на шината трябва да бъде терминиран с крайно съпротивление или терминатор, който абсорбира електрически сигнал, предотвратявайки нейното отразяване и движение в обратна посока по протежение на гумата.


Въведение

Проблемът, който ще обсъдим в тази глава, е, че IP адресите имат някакво значение само в семейството TCP/IP протоколи. Слоевете на връзката като Ethernet или Token ring имат своя собствена схема за адресиране (предимно 48-битови адреси); мрежовите слоеве от своя страна използват тези връзки. Ethernet мрежа може да се използва от различни мрежови слоеве едновременно. Компютрите, използващи различни мрежови протоколи, могат да бъдат на един и същ физически кабел.

Кога Ethernet рамкаизпратен от един хост през локалната мрежа към друг, неговият 48-битов Ethernet адрес определя към кой интерфейс трябва да бъде доставен. Шофьор мрежова платканикога не разглежда IP адреса на местоназначението в IP дейтаграма.

С други думи, става необходимо да се установи съответствие между две различни формиадреси: 32-битови IP адреси и всякакъв тип адреси на ниво връзка. RFC 826 [Plummer 1982] е официалната ARP спецификация.

Фигура 4.1 показва двата протокола, които ще разгледаме в тази и следващите глави: протоколът за разделяне на адреси (ARP) и протоколът за обратна разделителна способност (RARP).

Фигура 4.1 Протоколи за разделяне на адреси: ARP и RARP.

ARP осигурява динамично картографиране между IP адреси и съответните хардуерни адреси. Използваме термина динамичен, защото се случва автоматично и обикновено не зависи от приложението или волята, която се използва. системен администратор.

RARP се използва главно от системи без твърди дискове (бездискови работни станции или X терминали), но изисква ръчно конфигуриране с помощта на системен администратор. Ще разгледаме RARP.

Ако въведем командата

% ftp bsdi

ще бъде извършена следната последователност от действия. (Вижте фигура 4.2.)

  1. Приложение, FTP клиент, извиква gethostbyname (3), за да преобразува името на хоста (bsdi) в 32-битов IP адрес. Тази функция се нарича резолвер в DNS (система за имена на домейни), ще опишем това подробно в. Това се прави с помощта на DNS или, ако има малка мрежа, с помощта на статичен хост файл (/ etc / hosts).
  2. FTP клиентът изисква да се установи TCP връзка с посочения IP адрес.
  3. TCP изпраща заявка за свързване към отдалечения хост, като изпраща IP дейтаграми до посочения IP адрес. (Ще разгледаме как се прави това по-подробно.)
  4. Ако хостът дестинация е свързан към мрежа (Ethernet, Token ring или другият край на връзка от точка до точка), IP дейтаграма може да бъде изпратена директно до хоста. Ако хостът дестинация е в отдалечена мрежа, IP рутерът определя интернет адреса на директно свързания рутер за следващ хоп, за да изпрати IP дейтаграма там. И в двата случая IP дейтаграма се изпраща или към хост, или към рутер, директно свързан към мрежата.
  5. Ако се използва Ethernet, изпращащият хост трябва да преобразува 32-битовия адрес в 48-битов Ethernet адрес. Или с други думи, преобразувайте от логическо Интернет адресидо съответния физически хардуерен адрес. Това прави ARP. ARP работи в мрежи за излъчване, където много хостове или рутери са свързани към една и съща мрежа.
  6. ARP изпраща Ethernet рамка, наречена ARP заявка, до всеки хост в мрежата. Подобен методизлъчване се нарича излъчване. Фигура 4.2 показва заявката за излъчване пунктирани линии... ARP заявката съдържа IP адреса на хоста дестинация (чието име е bsdi) и заявката „ако сте собственик на този IP адрес, моля, кажете ми вашия хардуерен адрес“.

Фигура 4.2 ARP отговор на потребителски вход: ftp име на хост.

  • Хостът дестинация на ниво ARP получава тази заявка за излъчване, определя, че подателят иска своя IP адрес и отговаря на него с ARP отговор (ARP отговор). Този отговор съдържа IP адреса и съответния хардуерен адрес.
  • Получава се ARP отговор и може да бъде изпратена IP дейтаграмата, която е инициирала ARP заявката - ARP отговор.
  • IP дейтаграма се изпраща до хоста дестинация.
  • Основната концепция зад ARP е следната. Мрежовият интерфейс има хардуерен адрес (48-битов за Ethernet или Token ring). Разменените хардуерно кадри трябва да бъдат адресирани към правилния интерфейс. Въпреки това, TCP / IP използва своя собствена схема за адресиране: 32-битови IP адреси. Познаването на IP адреса на хост предотвратява ядрото да изпрати дейтаграма до този хост. Ethernet драйверът трябва да знае хардуерния адрес на дестинацията, за да изпрати данни там. Целта на ARP е да осигури динамично картографиране между 32-битови IP адреси и хардуерни адреси, използвани от различни мрежови технологии.

    Връзките от точка до точка не използват ARP. Когато тези канали са конфигурирани (обикновено по време на зареждане), ядрото трябва да каже IP адреса за всеки край на канала. Хардуерни адреси, като Ethernet адреси, в в такъв случайне се използват.

    Ефективността на ARP функционирането до голяма степен зависи от ARP кеша, който присъства на всеки хост. Кешът съдържа интернет адреси и съответните им хардуерни адреси. Стандартният живот за всеки запис в кеш паметта е 20 минути от момента, в който записът е създаден.

    Съдържанието на ARP кеша може да се види с помощта на командата arp (8). Опцията -a показва всички записи в кеша:

    bsdi% arp -a
    слънце (140.252.13.33) в 8: 0: 20: 3: f6: 42
    svr4 (140.252.13.34) при 0: 0: c0: c2: 9b: 26

    48-битовите Ethernet адреси са изброени като шест шестнадесетични числа, разделени с двоеточия. Допълнителни функции arp командите са разгледани в раздела на Глава 4.

    Формат на ARP пакет

    Фигура 4.3 показва формата на ARP заявка и формата на ARP отговор при използване на Ethernet и IP адреси. (ARP може да се използва в други мрежи и е в състояние да картографира повече от просто IP адреси. Първите четири полета след полето за тип рамка показват типовете и размерите на последните четири полета.)

    Фигура 4.3 Формат на ARP заявка или отговор при работа с Ethernet.

    Първите две полета в заглавката на Ethernet са полетата за източник и местоназначение на Ethernet. Специалната дестинация за Ethernet е излъчвателният адрес. Рамки с този адрес ще се получават от всички Ethernet интерфейси на кабела.

    Типът на Ethernet двубайтова рамка показва какъв тип данни ще последват. За ARP заявка или ARP отговор това поле съдържа 0x0806.

    Изразите хардуер и протокол се използват за описване на полета в ARP пакети. Например, ARP заявка изисква хардуерния адрес (в този случай Ethernet адреса), съответстващ на адреса на протокола (в този случай IP адреса).

    Полето за твърд тип показва типа на хардуерен адрес. За Ethernet тази стойност е една. Prot type показва типа адрес на протокола, който трябва да бъде съпоставен. За IP адреси стойността е 0x0800. По предназначение тази стойност съответства на полето за тип в Ethernet рамката, което съдържа IP дейтаграмата. (Вижте фигура 2.1.)

    Следващите две еднобайтови полета, твърд размер и размер на протокола, показват размерите в байтове на хардуерния адрес и адреса на протокола. В ARP заявки и отговори те са 6 за Ethernet и 4 за IP адреси.

    Полето op показва вида на операцията: ARP заявка (настроена на 1), ARP отговор (2), RARP заявка (3) и RARP отговор (4). (Ще говорим за RARP в.) Това поле е задължително, тъй като полетата за тип рамка са еднакви за ARP заявка и ARP отговор.

    Следващите четири полета са: хардуерният адрес на подателя (Ethernet адрес в този пример), адрес на протокола (IP адрес), хардуерен адрес на местоназначение и адрес на протокола на местоназначението. Моля, имайте предвид, че в този случай има известно дублиране на информацията: хардуерният адрес на подателя може да бъде получен както от заглавката на Ethernet, така и от ARP заявката.

    За ARP заявка се попълват всички полета, с изключение на хардуерен адрес на местоназначението. Когато системата получи ARP заявка, която е предназначена за нея, тя вмъква своя хардуерен адрес, разменя адресите на източника и дестинацията, задава полето op на 2 и изпраща отговор.

    ARP примери

    В този раздел ще използваме командата tcpdump, за да видим как ARP всъщност работи при стартиране на нормално TCP приложение като Telnet. Това съдържа допълнителна информация за това как работи tcpdump.

    Типичен пример

    За да видим как работи ARP, ще изпълним командата telnet, за да се свържем със сървъра за изхвърляне (отхвърляне на сървъра).

    bsdi% arp -aпроверете дали ARP кешът е празен
    bsdi% telnet svr4 изхвърлисвържете се със сървъра
    Опитвам 140.252.13.34 ...
    Свързан към svr4.
    Escape символът е "^]".
    ^] натиснете Control и дясната квадратна скоба,
    telnet> откажи сеза да получите подкана за Telnet и да затворите сесията
    Връзката е затворена.

    Докато тези стъпки са в ход, изпълняваме командата tcpdump с опцията -e на другия хост (sun). Това ще ни позволи да видим хардуерните адреси (48-битови Ethernet адреси).


    arp който-има svr4 кажи bsdi
    2 0,002174 (0,0022) 0: 0: c0: c2: 9b: 26 0: 0: c0: 6f: 2d: 40 arp 60:
    arp отговор svr4 е в 0: 0: c0: c2: 9b: 26
    3 0,002831 (0,0007) 0: 0: c0: 6f: 2d: 40 0: 0: c0: c2: 9b: 26 ip 60:
    bsdi.1030> svr4.отхвърлете: S 596459521: 596459521 (0)
    спечели 4096
    4 0,007834 (0,0050) 0: 0: c0: c2: 9b: 26 0: 0: c0: 6f: 2d: 40 ip 60:
    svr4.discard> bsdi.1030: S 3562228252: 3562228252 (0)
    ack 596459522 победа 4096
    5 0,009615 (0,0018) 0: 0: c0: 6f: 2d: 40 0: 0: c0: c2: 9b: 26 ip 60:
    bsdi.1030> svr4.изхвърли:. ack 1 победа 4096

    Фигура 4.4 ARP заявка и ARP отговор, генерирани при заявка за Telnet връзка.

    % D0% A7% D0% B8% D1% 81% D0% BB% D0% BE,% 20% D0% BA% D0% BE% D1% 82% D0% BE% D1% 80% D0% BE% D0% B5% 20% D0% BF% D0% B5% D1% 87% D0% B0% D1% 82% D0% B0% D0% B5% D1% 82% D1% 81% D1% 8F% 20% D0% B2% 20% D0% BA% D0% B0% D0% B6% D0% B4% D0% BE% D0% B9% 20% D1% 81% D1% 82% D1% 80% D0% BE% D0% BA% D0% B5,% 20% D0% BF% D0% BE% D1% 81% D0% BB% D0% B5% 20% D0% BD% D0% BE% D0% BC% D0% B5% D1% 80% D0% B0 % 20% D1% 81% D1% 82% D1% 80% D0% BE% D0% BA% D0% B8% 20-% 20% D1% 8D% D1% 82% D0% BE% 0A% D0% B2% D1% 80% D0% B5% D0% BC% D1% 8F% 20 (% D0% B2% 20% D1% 81% D0% B5% D0% BA% D1% 83% D0% BD% D0% B4% D0 % B0% D1% 85)% 20% D0% BA% D0% BE% D0% B3% D0% B4% D0% B0% 20% D0% BF% D0% B0% D0% BA% D0% B5% D1% 82% 20% D0% B1% D1% 8B% D0% BB% 20% D0% BF% D1% 80% D0% B8% D0% BD% D1% 8F% D1% 82% 20% D0% BF% D1% 80% D0% BE% D0% B3% D1% 80% D0% B0% D0% BC% D0% BC% D0% BE% D0% B9% 20tcpdump.% 20% D0% 92% 20% D0% BA% D0 % B0% D0% B6% D0% B4% D0% BE% D0% B9% 20% D1% 81% D1% 82% D1% 80% D0% BE% D0% BA% D0% B5% 0A% D0% BF % D0% BE% D1% 81% D0% BB% D0% B5% 20% D0% BF% D0% B5% D1% 80% D0% B2% D0% BE% D0% B9% 20% D1% 81% D0 % BE% D0% B4% D0% B5% D1% 80% D0% B6% D0% B8% D1% 82% D1% 81% D1% 8F% 20% D1% 80% D0% B0% D0% B7% D0 % BD% D0% B8% D1% 86% D0% B0% 20% D0% B2% D0% BE% 20% D0% B2% D1% 80% D0% B5% D0% BC% D0% B5% D0% BD % D0% B8% 20 (% D0% B2% 20% D 1% 81% D0% B5% D0% BA% D1% 83% D0% BD% D0% B4% D0% B0% D1% 85)% 20% D1% 81% 20% D0% BF% D1% 80% D0 % B5% D0% B4% D1% 8B% D0% B4% D1% 83% D1% 89% D0% B5% D0% B9% 20% D1% 81% D1% 82% D1% 80% D0% BE% D0 % BA% D0% BE% D0% B9.% 0A% D0% AD% D1% 82% D0% BE% 20% D0% B7% D0% BD% D0% B0% D1% 87% D0% B5% D0% BD% D0% B8% D0% B5% 20% D0% BF% D1% 80% D0% B8% D0% B2% D0% BE% D0% B4% D0% B8% D1% 82% D1% 81% D1% 8F% 20% D0% B2% 20% D1% 81% D0% BA% D0% BE% D0% B1% D0% BA% D0% B0% D1% 85.% 20% D0% 9A% D0% B0% D0 % BA% 20% D0% B2% D0% B8% D0% B4% D0% BD% D0% BE% 20% D0% B8% D0% B7% 20% D1% 80% D0% B8% D1% 81% D1 % 83% D0% BD% D0% BA% D0% B0,% 20% D0% B2% D1% 80% D0% B5% D0% BC% D1% 8F% 20% D0% BC% D0% B5% D0% B6% D0% B4% D1% 83% 20% D0% BE% D1% 82% D0% BF% D1% 80% D0% B0% D0% B2% D0% BA% D0% BE% D0% B9% 0AARP% 20% D0% B7% D0% B0% D0% BF% D1% 80% D0% BE% D1% 81% D0% B0% 20% D0% B8% 20% D0% BF% D0% BE% D0% BB% D1% 83% D1% 87% D0% B5% D0% BD% D0% B8% D0% B5% D0% BC% 20ARP% 20% D0% BE% D1% 82% D0% BA% D0% BB% D0% B8% D0% BA% D0% B0% 20% D1% 81% D0% BE% D1% 81% D1% 82% D0% B0% D0% B2% D0% BB% D1% 8F% D0% B5% D1% 82% 202.2% 20% D0% BC% D1% 81.% 20% D0% 9F% D0% B5% D1% 80% D0% B2% D1% 8B% D0% B9% 20TCP% 20% D1% 81% D0 % B5% D0% B3% D0% BC% D0% B5% D0% BD% D1% 82% 0A% D0% BF% D0% BE% D1% 81% D0% BB% D0% B0% D0% BD % 20 % D1% 87% D0% B5% D1% 80% D0% B5% D0% B7% 200,7% 20% D0% BC% D1% 81% 20% D0% BF% D0% BE% D1% 81% D0% BB% D0% B5% 20% D1% 8D% D1% 82% D0% BE% D0% B3% D0% BE.% 20% D0% A2% D0% B0% D0% BA% D0% B8% D0% BC% 20% D0% BE% D0% B1 % D1 % 80% D0% B0% D0% B7% D0% BE% D0% BC,% 20% D0% B4% D0% BB% D1% 8F% 20% D0% B4% D0% B8% D0% BD% D0% B0% D0% BC% D0% B8% D1% 87% D0% B5% D1% 81% D0% BA% D0% BE% D0% B3% D0% BE% 20% D0% BE% D0% BF% D1% 80% D0% B5% D0% B4% D0% B5% D0% BB% D0% B5% D0% BD% D0% B8% D1% 8F% 0A% D0% B0% D0% B4% D1% 80% D0% B5% D1% 81% D0% B0% 20% D1% 81% 20% D0% B8% D1% 81% D0% BF% D0% BE% D0% BB% D1% 8C% D0% B7% D0% BE% D0% B2% D0% B0% D0% BD% D0% B8% D0% B5% D0% BC% 20ARP,% 20% D0% B2% 20% D0% B4% D0% B0% D0% BD% D0 % BD % D0% BE% D0% BC% 20% D0% BF% D1% 80% D0% B8% D0% BC% D0% B5% D1% 80% D0% B5,% 20% D0% BF% D0% BE% D1% 82% D1% 80% D0% B5% D0% B1% D0% BE% D0% B2% D0% B0% D0% BB% D0% BE% D1% 81% D1% 8C% 20% D0% BC% D0% B5% D0% BD% D0% B5% D0% B5% 20% D1% 87% D0% B5% D0% BC% 203% 20% D0% BC% D1% 81.

    % D0% 98% 20% D0% BF% D0% BE% D1% 81% D0% BB% D0% B5% D0% B4% D0% BD% D0% B5% D0% B5% 20% D0% BD% D0 % B0% 20% D1% 87% D1% 82% D0% BE% 20% D1% 81% D0% BB% D0% B5% D0% B4% D1% 83% D0% B5% D1% 82% 20% D0 % BE% D0% B1% D1% 80% D0% B0% D1% 82% D0% B8% D1% 82% D1% 8C% 20% D0% B2% D0% BD% D0% B8% D0% BC% D0 % B0% D0% BD% D0% B8% D0% B5% 20% D0% B2% 20% D0% B2% D1% 8B% D0% B2% D0% BE% D0% B4% D0% B5% 20tcpdump:% 20% D0% BC% D1% 8B% 20% D0% BD% D0% B5% 0A% D1% 83% D0% B2% D0% B8% D0% B4% D0% B8% D0% BC% 20ARP% 20% D0% B7% D0% B0% D0% BF% D1% 80% D0% BE% D1% 81% 20% D0% BE% D1% 82% 20svr4,% 20% D0% BA% D0% BE% D0% B3 % D0% B4% D0% B0% 20% D0% BE% D0% BD% 20% D0% BF% D0% BE% D1% 81% D1% 8B% D0% BB% D0% B0% D0% B5% D1 % 82% 20% D1% 81% D0% B2% D0% BE% D0% B9% 20% D0% BF% D0% B5% D1% 80% D0% B2% D1% 8B% D0% B9% 20 TCP% 20 % D1% 81% D0% B5% D0% B3% D0% BC% D0% B5% D0% BD% D1% 82% 20 (% D1% 81% D1% 82% D1% 80% D0% BE% D0 % BA% D0% B0% 204).% 0A% D0% 94% D0% B5% D0% BB% D0% BE% 20% D0% B2% 20% D1% 82% D0% BE% D0% BC,% 20 % D1% 87% D1% 82% D0% BE% 20svr4% 20% D1% 83% D0% B6% D0% B5% 20% D0% B8% D0% BC% D0% B5% D0% B5% D1% 82 % 20% D0% B4% D0% B0% D0% BD% D0% BD% D1% 8B% D0% B5% 20% D0% BE% 20bsdi% 20% D0% B2% 20% D1% 81% D0% B2 % D0% BE% D0% B5% D0% BC% 20ARP% 20% D0% BA% D1% 8D% D1% 88% D0% B5,% 20% D1% 82% D0% B0% D0% BA% 20 % D0% BA% D0% B0% D0% BA,% 20% D0% BA% D0% BE% D0% B3% D0% B4% D0% B0% 0A% D1% 81% D0% B8% D1% 81% D1 % 82% D0% B5% D0% BC% D0% B0% 20% D0% BF% D0% BE% D0% BB% D1% 83% D1% 87% D0% B0% D0% B5% D1% 82% 20ARP % 20% D0% B7% D0% B0% D0% BF% D1% 80% D0% BE% D1% 81,% 20% D0% BF% D0% BE% D0% BC% D0% B8% D0% BC% D0% BE% 20% D1% 82% D0% BE% D0% B3% D0% BE% 20% D1% 87% D1% 82% D0% BE% 20% D0% BE% D0% BD% D0% B0% 20% D0% BF% D0% BE% D1% 81% D1% 8B% D0% BB% D0% B0% D0% B5% D1% 82% 20ARP% 20% D0% BE% D1% 82% D0% BA% D0% BB% D0% B8% D0% BA,% 20% D0% BE% D0% BD% D0% B0% 20% D1% 82% D0% B0% D0% BA% D0% B6% D0% B5% 0A % D1% 81% D0% BE% D1% 85% D1% 80% D0% B0% D0% BD% D1% 8F% D0% B5% D1% 82% 20% D0% B0% D0% BF% D0% BF % D0% B0% D1% 80% D0% B0% D1% 82% D0% BD% D1% 8B% D0% B9% 20% D0% B0% D0% B4% D1% 80% D0% B5% D1% 81 % 20% D0% B8% 20IP% 20% D0% B0% D0% B4% D1% 80% D0% B5% D1% 81% 20% D0% B7% D0% B0% D0% BF% D1% 80% D0 % BE% D1% 81% D0% B8% D0% B2% D1% 88% D0% B5% D0% B3% D0% BE% 20% D0% B2% 20% D1% 81% D0% B2% D0% BE % D0% B5% D0% BC% 20ARP% 20% D0% BA% D1% 8D% D1% 88% D0% B5.% 20% D0% AD% D1% 82% D0% BE% 0A% D0% BB% D0% BE% D0% B3% D0% B8% D1% 87% D0% BD% D0% BE,% 20% D1% 82% D0% B0% D0% BA% 20% D0% BA% D0% B0% D0 % BA% 20% D0% B5% D1% 81% D0% BB% D0% B8% 20% D0% B7% D0% B0% D0% BF% D1% 80% D0% BE% D1% 81% D0% B8 % D0% B2% D1% 88% D0% B8% D0% B9% 20% D1% 81% D0% BE% D0% B1% D0% B8% D1% 80% D0% B0% D0% B5% D1% 82% D1% 81% D1% 8F% 20% D0% BF% D0% BE% D1% 81% D0% BB% D0% B0% D1% 82% D1% 8C% 20IP% 20% D0% B4% D0% B0% D1% 82% D0% B0% D0% B3% D1% 80% D0% B0% D0% BC% D0% BC% D1% 83,% 20% D1% 82% D0% BE% 0A% D0% BF% D0% BE% D0% BB% D1% 83 % D1% 87% D0% B8% D0% B2% D1% 88% D0% B5% D0% BC% D1% 83% 20% D1% 81% D0% BA% D0% BE% D1% 80% D0% B5 % D0% B5% 20% D0% B2% D1% 81% D0% B5% D0% B3% D0% BE% 20% D0% BF% D1% 80% D0% B8% D0% B4% D0% B5% D1 % 82% D1% 81% D1% 8F% 20% D0% BE% D1% 82% D0% BF% D1% 80% D0% B0% D0% B2% D0% B8% D1% 82% D1% 8C% 20 % D0% BE% D1% 82% D0% B2% D0% B5% D1% 82% 20% D0% BD% D0% B0% 20% D1% 8D% D1% 82% D1% 83% 0A% D0% B4 % D0% B0% D1% 82% D0% B0% D0% B3% D1% 80% D0% B0% D0% BC% D0% BC% D1% 83.

    % 0A% 0A

    този път telnet към IP адреса, а не към името на хоста
    bsdi% дата; telnet 140.252.13.36; дата
    Сб, 30 януари 06:46:33 MST 1993 г
    Опитвам 140.252.13.36 ...
    telnet: Не може да се свърже с отдалечен хост: Времето за изчакване на връзката изтече
    сб, 30 януари 06:47:49 MST 1993 г., изминали 76 секунди

    bsdi% arp -aпроверете ARP кеша
    ? (140.252.13.36) в (непълен)

    На фигура 4.5 виждаме изхода от tcpdump.

    1 0.0 arp който има 140.252.13.36 кажи bsdi
    2 5.509069 (5.5091) arp който има 140.252.13.36 кажи bsdi
    3 29.509745 (24.0007) arp който има 140.252.13.36 кажи bsdi

    Фигура 4.5 ARP заявка за несъществуващ хост.

    Сега не посочваме опцията -e, тъй като вече знаем, че ARP заявката се излъчва.

    Тук е интересно да се види колко често се изпращат ARP заявки: 5,5 секунди след първата заявка и отново след 24 секунди. (Ще разгледаме TCP изчакванията и алгоритъма за повторно предаване по-подробно.) Общото време, показано в изхода на tcpdump е 29,5 секунди. Въпреки това, изходът от командата дата преди и след telnet командипоказва, че заявката за връзка от Telnet клиента е продължила 75 секунди. Всъщност по-късно ще видим, че повечето реализации на BSD задават ограничение от 75 секунди за завършване на заявка за TCP връзка.

    Упълномощен агент на ARP

    ARP прокси агент позволява на рутера да отговаря на ARP заявки в една мрежа, докато исканият хост е в друга мрежа. Това означава да подмамите подателя да изпрати ARP заявка, за да мисли, че рутерът е хостът на местоназначението, докато в действителност хостът дестинация е "от другата страна" на рутера. Рутерът действа като прокси агент за хоста дестинация, препращайки пакети от друг хост.

    За да опишем по-добре как работят ARP прокси сървърите, ще разгледаме пример. Фигура 3.10 показва, че sun е свързан към две Ethernet мрежи. В действителност обаче това не е така, както може да се види, като сравним тази снимка със снимката от вътрешната страна на корицата. Между sun и подмрежа 140.252.1 е рутер, който действа като ARP прокси, което го прави да изглежда сякаш sun е в подмрежа 140.252.1. Фигура 4.6 показва, че Telebit NetBlazer с име netb се намира между подмрежата и слънцето на хоста.

    Фигура 4.6 Пример за оторизиран ARP.

    Когато някой друг хост в подмрежа 140.252.1 (да речем gemini) иска да изпрати IP дейтаграма до хост sun на адрес 140.252.1.29, gemini сравнява мрежовия ID (140.252) и идентификатора на подмрежата (1) и ако те са идентични, изпраща ARP заявка към горния Ethernet (на Фигура 4.6) на IP адрес 140.252.1.29. netb рутерът разпознава този IP адрес като принадлежащ на един от комутируемите хостове и отговаря, като изпраща хардуерния адрес на този Ethernet интерфейс по кабел 140.252.1. Хостът gemini изпраща IP дейтаграма до netb през Ethernet, а netb изпраща дейтаграмата до sun през комутируеми SLIP връзки. Това го прави прозрачен за всички хостове в подмрежата 140.252.1, тъй като sun наистина е "зад" netb рутера.

    Ако бягаме arp командана хоста близнаци след комуникация с хоста слънце, ще видим, че и двата адреса принадлежат към подмрежа 140.252.1 (netb и sun) и че отговарят на един и същ хардуерен адрес. Това обикновено е основната причина да се използва ARP прокси.

    зодия Близнаци% arp -a
    ще има много редове за хостове от подмрежа 140.252.1
    netb (140.252.1.183) в 0: 80: реклама: 3: 6a: 80
    слънце (140.252.1.29) в 0: 80: реклама: 3: 6a: 80

    Друг детайл на фигура 4.6, който трябва да бъде обяснен, е липсата на IP адрес под полето, което обозначава netb рутера (SLIP връзка). Защо няма IP адрес в двата края на SLIP връзката, като между bsdi и slip? В раздела на Глава 3, от изхода на командата ifconfig, забелязахме, че адресът на местоназначението на SLIP връзката е 140.252.1.183. NetBlazer не изисква IP адреси във всеки край на SLIP връзката. (Това спестява няколко ценни в момента IP адреса.) Той определя кой хост изпраща пакета въз основа на кой сериен интерфейс пристига пакетът, така че няма нужда всеки хост на SLIP връзката да използва уникален IP адрес за връзката си към рутер. Всички комутируеми хостове използват 140.252.1.183 като дестинация за своите SLIP връзки.

    Прокси ARP агентът гарантира, че дейтаграмите се доставят на sun, но как го правят другите хостове в подмрежата 140.252.13? Маршрутизацията трябва да се използва за насочване на дейтаграми към други хостове. Записите в таблицата за маршрутизиране трябва да бъдат направени някъде в мрежа 140.252, така че всички дейтаграми, насочени към подмрежа 140.252.13 или към посочените хостове в тази подмрежа, ще бъдат насочени към рутер netb. Този рутер знае как да отведе дейтаграмите до крайната им дестинация, като ги изпрати през слънцето.

    Прокси ARP се нарича още безразборен ARP или ARP хак. Тези имена идват от друго използване на прокси ARP агенти: те са били използвани за скриване една от друга на две физически мрежи, между които се намира рутерът. В този случай и двете физически мрежи са използвали един и същ мрежов идентификатор, тъй като рутерът между тях е конфигуриран като ARP прокси агент, за да отговаря на ARP заявки от една мрежа към хостове от другата. Тази техника е била използвана в миналото за скриване на група хостове с повече Стара версия TCP / IP на отделен физически кабел. Двете причини, поради които тези „наследени“ хостове трябваше да бъдат отделени, бяха, че, първо, не можеха да поддържат подмрежи, и второ, използваха стари излъчващи адреси (идентификационният номер на хоста се състоеше от всички нулеви битове вместо от съвременния стандарт, в който идентификаторът на хоста се състои от единични битове).

    Неразумно ARP

    Друга ARP функция, която си струва да се обмисли, е безвъзмездният ARP. Той се проявява, когато хост изпрати ARP заявка въз основа на собствения си IP адрес. Това обикновено се прави, когато интерфейсът е конфигуриран по време на зареждане.

    Ако стартираме tcpdump на хост sun докато зареждаме хост bsdi, ще видим пакета, показан на Фигура 4.7.

    1 0.0 0: 0: c0: 6f: 2d: 40 ff: ff: ff: ff: ff: ff arp 60:
    arp който има 140.252.13.35 кажи 140.252.13.35

    Фигура 4.7 Пример за "безвъзмезден" ARP.

    (Използвахме флага -n на tcpdump за отпечатване на адреси в числови десетични обозначения вместо имена на хостове.) По отношение на полетата на ARP заявка, адресът на протокола на изпращача и адресът на протокола на местоназначението са идентични: 140.252.13.35 (което съответства на хост bsdi ). Адресът на източника в заглавката на Ethernet, 0: 0: c0: 6f: 2d: 40, както е показано от tcpdump, е еквивалентен на хардуерен адрес на източника (от Фигура 4.4).

    Root ARP предоставя две характеристики.

    1. Позволява на хоста да определи дали съществува друг хост със същия IP адрес. Хостът bsdi не очаква отговор на своята заявка, но ако отговорът бъде приет, конзолата показва грешката "намерен дублиран IP адрес с Ethernet адрес: a: b: c: d: e: f". Това е предупреждение към системния администратор, че една от системите е неправилно конфигурирана.
    2. Ако хостът, изпращащ безвъзмездния ARP, просто промени хардуерния си адрес (може би защото хостът беше изключен, интерфейсната платка беше премахната и след това хостът беше рестартиран), този пакет принуждава друг хост към кабела, който има запис в своя кеш за стар хардуерен адрес, актуализирайте ARP кеша съответно. Малко известен фактотносно ARP е, че ако хост получи ARP заявка за IP адрес, който вече има в кеша, съдържанието на кеша се актуализира с хардуерния адрес на подателя (Ethernet адрес) от ARP заявката. Това се прави за всяка ARP заявка, получена от хоста. (Отново, ARP заявките се излъчват, така че това се прави от всички хостове в мрежата всеки път, когато се получи ARP заявка.) Описва приложения, които използват тази ARP функция. Той позволява на резервен файлов сървър да заеме мястото на неуспешен сървър, използвайки "безвъзмездна" ARP заявка с резервен хардуерен адрес, но със същия IP адрес като неуспешния хост. В този случай всички пакети, насочени към неуспешния сървър, ще бъдат изпратени до резервния сървър и персонализирани приложенияняма да знае, че основният сървър не работи.
    За съжаление след това авторите изоставиха този подход, тъй като той зависи от правилното внедряване на ARP на всички видове клиенти. Има различни видове ARP, които не поддържат тази спецификация.

    Наблюдението на всички системи в подмрежата, използвани в тази книга, разкрива, че SunOS 4.1.3 и 4.4BSD използват безвъзмездно ARP по време на зареждане, а SVR4 не поддържа тази функция.

    Arp команда

    Използвахме тази команда с флага -a, за да изброим всички записи в ARP кеша. Има и други опции.

    Суперпотребителят може да използва опцията -d, за да премахне записа от ARP кеша. (Това беше направено преди стартиране на някои от примерите, за да се покажат промените в ARP.)

    Записите могат да се добавят с опцията -s. Когато използвате тази опция, трябва да посочите името на хоста и Ethernet адреса, IP адресът, съответстващ на името на хоста, и Ethernet адресът се добавят към кеша. Подобен запис е направен на постоянна основа(няма да изтече времето за изчакване от кеша), освен ако в края командна линияняма да се използва ключова думатемп.

    Ключовата дума pub в края на командния ред с опцията -s ще накара системата да действа като ARP агент за този хост. Системата ще отговори на ARP заявки за IP адреси, които съвпадат с името на хоста, а отговорът ще съдържа посочения Ethernet адрес. Ако рекламираният адрес е адресът на самата отговаряща система, това означава, че системата действа като прокси ARP агент за посоченото име на хост.

    Кратки заключения

    ARP е основният протокол, използван от почти всички TCP/IP реализации. Обикновено функционирането му не зависи от използваните приложения или волята на системния администратор. ARP кешът е в основата на тази работа. Използвахме командата arp за преглед или промяна на кеша. Всеки запис в кеша има таймер, който се използва за премахване на незавършени или завършени записи. Командата arp показва променени записи в ARP кеша.

    Разгледахме как ARP работи нормално и специализираните версии: прокси ARP (където рутер отговаря на ARP заявки за хостове на различен интерфейс на рутера) и безвъзмезден ARP (изпраща ARP заявки за свой собствен IP адрес, обикновено при стартиране).

    Упражнения

    1. Нека се върнем към командата, която изпълнихме, за да получим изхода, показан на Фигура 4.4. Какво ще стане, ако след като проверим локалния ARP кеш и се окаже, че е празен, влезем в командата

      bsdi% рш свр4 арп -а

      за да проверите дали ARP кешът също е празен на хоста дестинация? (Тази команда ще изпълни командата arp -a на хоста svr4.)

    2. Опишете тест, който ще определи дали конкретен хост обработва правилно "безвъзмездните" ARP заявки.
    3. Стъпка 7 в раздела може да отнеме известно време (милисекунди), тъй като пакетът е изпратен и ARP чака отговор. Мислите ли, че ARP ще обработи множество дейтаграми, пристигнали от IP до една и съща дестинация през този период от време?
    4. В края на раздела споменахме, че имплементациите на Host Requirements RFC и Berkeley се различават по отношение на изчакванията за обработка за активни ARP записи. Какво се случва, ако клиент на Berkeley се опита да се свърже със сървър, който е изключен и Ethernet платката е премахната от него? Ще се промени ли нещо, ако сървърът издаде безплатна ARP заявка при зареждане?

    Протоколът ARP работи по различни начини в зависимост от това кой протокол на слоя на връзката работи в дадена мрежа - протокол за локална мрежа (Ethernet, Token Ring, FDDI) с възможност за излъчване едновременно до всички мрежови възли или протокол глобална мрежа(X.25, Frame Relay), обикновено не поддържа достъп до излъчване.

    В локални мрежи ARP използва рамки за излъчване на Link Layer за търсене в мрежата за хост с определен IP адрес.

    Принцип на действие:

      Възелът, към който трябва да съпостави IP адреса местен адрес, генерира ARP заявка, вмъква я в рамка на протокола за връзка за данни, като посочва известен IP адрес в нея и излъчва заявката.

      Всички хостове в локалната мрежа получават ARP заявка и сравняват посочения там IP адрес със своя собствен.

      Ако съвпадат, хостът генерира ARP отговор, в който посочва своя IP адрес и своя локален адрес и го изпраща вече насочен, тъй като подателят посочва своя локален адрес в ARP заявката.

    Arp таблица за превод на адреси

    Преводът на адрес се извършва чрез търсене на таблицата. Тази таблица, наречена ARP таблица, се съхранява в паметта и съдържа редове за всеки хост.

    ARP таблиците са изградени съгласно RFC-1213 и съдържат четири кода за всеки IP адрес:

      Ifindex - Физически порт (интерфейс), съответстващ на дадения адрес;

      Физически адрес - MAC адрес, например Ethernet адрес;

      IP адрес - IP адрес, съответстващ на физическия адрес;

      тип съвпадение на адреса - това поле може да приема 4 стойности: 1 - опцията не е стандартна и не отговаря на нито един от описаните по-долу типове; 2 - този записвече не отговаря на реалността; 3 - постоянно подвързване; 4 - динамично свързване;

    Ще приема маси за Ethernet технологии:

    Ethernet адрес

    08: 00: 39: 00: 2F: C3

    08:00:5А:21:А7:22

    08:00:10:99: AC: 5

    Прието е всички байтове от 4-байтов IP адрес да се записват в десетични числа, разделени с точки. Когато се записва 6-байтов Ethernet адрес, всеки байт се посочва в шестнадесетична форма и се разделя с двоеточие.

    Таблицата ARP е необходима, тъй като IP и Ethernet адресите се избират независимо и няма алгоритъм за преобразуване на единия в друг.

    IP адресът се избира от мрежовия мениджър. Ethernet адресът се избира от производителя на оборудването за мрежов интерфейс от адресното пространство, разпределено за него съгласно лиценза. Когато се смени NIC картата на машината, нейният Ethernet адрес също се променя.

    Arp кеш.

      Ефективността на ARP функционирането до голяма степен зависи от ARP кеша, който присъства на всеки хост.

      Стандартният живот за всеки запис в кеш паметта е 20 минути от момента, в който записът е създаден.

    Ред за превод на адрес

    При нормална работа мрежова програмакато TELNET изпраща съобщение на приложението, използвайки TCP транспортни услуги. TCP модулът изпраща съответното транспортно съобщение през IP модула. Резултатът е IP пакет, който трябва да се предаде на Ethernet драйвера. IP адресът на местоназначението е известен на приложната програма, TCP модула и IP модула. Трябва да намерите Ethernet адреса на местоназначението въз основа на него. ARP таблицата се използва за определяне на желания Ethernet адрес.

    Как се попълва ARP таблицата? Попълва се автоматично от ARP модула според нуждите. Когато съществуващата ARP таблица не може да разреши IP адреса, се случва следното:

      По мрежата се изпраща заявка за излъчване на ARP.

      Изходящият IP пакет е поставен на опашка.

    Всеки мрежов адаптер получава излъчвания. Всички Ethernet драйвери проверяват полето за тип в получената Ethernet рамка и препращат ARP пакети към ARP модула. ARP заявката може да се тълкува по следния начин: „Ако вашият IP адрес съвпада с посочения, моля, кажете ми вашия Ethernet адрес.“ Пакет ARP заявка изглежда така:

    Примерна ARP заявка

    Всеки ARP модул проверява полето за търсене на IP адрес в получения ARP пакет и, ако адресът съвпада със собствения му IP адрес, след това изпраща отговор директно до Ethernet адреса на заявителя. Отговорът на ARP може да се интерпретира като: "Да, това е моят IP адрес, отговаря на такъв и такъв Ethernet адрес." Пакет ARP отговор изглежда така:

    Примерен ARP отговор

    Този отговор се получава от машината, която е направила ARP заявката. Драйверът на тази машина проверява полето за тип в Ethernet рамката и изпраща ARP пакета към ARP модула. ARP модулът анализира ARP пакета и добавя запис към неговата ARP таблица.

    Актуализираната таблица изглежда така:

    Оценка: 4.86 Гласове: 7 Коментари: 10

    Да започнем с теория...

    Какво е ARP и защо ни е нужен

    ARP("Address Resolution Protocol" - протокол за разрешаване на адреси) - протоколът, използван в компютърните мрежи ниско ниво, предназначени да определят адреса на слоя на връзката на известен адрес мрежов слой... Този протокол е най-широко използван поради повсеместното разпространение на IP мрежите, изградени върху Ethernet, тъй като в почти 100% от случаите ARP се използва с тази комбинация.

    ARP протоколът работи с Мак адресами. Всяка мрежова карта има свой индивидуален MAC адрес.

    Мак адрес ("Media Access Control" - контрол на достъпа до медиите) е уникален идентификатор, свързан с различни видовеоборудване за компютърни мрежи... Мнозинство мрежови протоколиСлоят на връзката използва едно от трите управлявани от IEEE MAC адресни пространства: MAC-48, EUI-48 и EUI-64. На теория адресите във всяко от пространствата трябва да са глобално уникални. Не всички протоколи използват MAC адреси и не всички протоколи, които използват MAC адреси, се нуждаят тези адреси да бъдат по същия начин уникални.

    Фиг. 1.Път към ARP таблицата.

    Фиг. 2. ARP таблица.

    На фигура 2 виждаме ARP таблица. В него има три записа, те се добавят автоматично и имат следната структура. IP адресВсъщност е IP адресът на компютъра в мрежата, Мак адрес Mac адресът на същия компютър и интерфейс,което показва кой интерфейс стои зад този компютър... Моля, имайте предвид, че до всички записи има буква D. Това означава, че този запис е динамичен и ще бъде променен при промяна на някои данни. Тоест, ако потребителят случайно въведе грешен IP адрес, тогава записът в ARP таблицата просто ще се промени и нищо друго. Но това не ни устройва. Трябва да се застраховаме срещу подобни случаи. За това към ARP таблицата се добавят статични записи. Как да го направим? Има два начина.

    Фиг. 3.Добавете статичен запис по първия начин.

    Метод първи.Както обикновено, натиснете червения плюс. В прозореца, който се показва, въведете IP адреса, MAC адреса и изберете интерфейса, зад който се намира този компютър.

    Фиг. 4.Добавете статичен запис по втория начин.

    Метод втори.Изберете желания запис, щракнете двукратно с левия бутон на мишката, в прозореца, който се показва, натиснете бутона Направете статик... Добавен е статичен запис.

    Фиг. 5.Таблица със статични записи.

    Както можете да видите на фигура 5, срещу добавения запис няма буква D. Това означава, че записът е статичен.

    Сега, ако потребителят случайно въведе грешен адрес, Mikrotik, след като провери съответствието на IP и MAC адресите в таблицата ARP и не намери желан вход, няма да позволи на потребителя да има достъп до Интернет, като по този начин води потребителя до идеята, че може да е сгрешил и ще е необходимо да се обади на администратора.

    Какво друго бих искал привлича вниманието ти e: Тези записи се отнасят за пакети, преминаващи през рутера.

    Рутер или рутер- мрежово устройство, който взема решения за препращане на пакети на мрежовия слой (слой 3 на модела OSI) между различни мрежови сегменти въз основа на информация за мрежовата топология и определени правила.

    Ако искате правилата да се прилагат към Bridge, тогава в Bridge трябва да активирате функцията Use IP Firewall (фиг. 6.).

    Мосте метод за свързване на два Ethernet сегмента на слоя на връзката, т.е. без да се използват повече протоколи високо нивокато IP. Пакетите се предават на базата на Ethernet адреси, а не на IP адреси (като в рутер). Тъй като предаването се извършва на слоя на връзката за данни (слой 2 на модела OSI), всички протоколи от по-висок слой са прозрачно свързани.

    Фиг. 6... Активиране на функцията Използване на IP защитна стена.

    Евгений Рудченко

    Ако компютърът е в контакт с друго подобно устройство в същата мрежа, се изисква физически или MAC адрес. Но тъй като приложението предостави IP адреса на получателя, то се нуждае от някакъв механизъм, за да го свърже с MAC адреса. Това се прави с помощта на протокола за разрешаване на адреси (ARP). IP адресът на хоста дестинация се излъчва и приемащият хост съобщава източника на своя MAC адрес.

    Това означава, че във всеки случай, когато машина A възнамерява да изпрати пакети с данни към устройство B, тя трябва да изпрати ARP пакет, за да разреши MAC адрес B. Следователно това увеличава натоварването на трафика твърде много, следователно, за да намали разходите за комуникация , компютрите, които използват ARP протоколи, поддържат кеш на новопридобитите IP_to_MAC адресни обвързвания, тоест не трябва да използват повторно протокола.

    Модерен външен вид

    Днес се използват няколко подобрения на ARP и неговата цел. Така че, когато машина А иска да изпрати пакети до устройство Б, възможно е Б да изпрати данни до А скоро. Поради тази причина, за да избегне ARP за машина B, A трябва да обвърже IP_to_MAC адреса, когато иска MAC адреса на B в специален пакет.

    Тъй като A прави първоначалната си заявка за MAC адреса на B, всеки компютър в мрежата трябва да извлече и съхрани обвързването на IP_to_MAC A адрес в своя кеш. нов компютър(например при рестартиране операционна система), той може да излъчва това обвързване, така че всички други машини да могат да го съхраняват в своите кешове. Това ще елиминира много ARP пакети от всички други машини, когато искат да комуникират с добавеното устройство.

    Вариации на ARP протокола

    Помислете за сценарий, при който компютър се опитва да комуникира с отдалечена машина, използвайки програмата PING, без предварително да обменя IP дейтаграми между тези устройства и трябва да бъде изпратен ARP пакет, за да идентифицира MAC адреса на отдалечения компютър.

    Съобщението за заявка на протокола за разрешаване на адреси (което изглежда като A.A.A.A адреси B.B.B.B - IP адреси) се излъчва в локалната мрежа с помощта на протокола Тип Ethernet 0x806. Пакетът се пуска от всички машини с изключение на целевата машина, която отговаря със съобщение за отговор на APR (AAAA - hh: hh: hh: hh: hh: hh където hh: hh: hh: hh: hh: hh е адресът на източника на Ethernet ). Този отговор е едноадресен за машината с IP адрес B.B.B.B. Тъй като съобщението за заявка на APR протокол включва хардуерния адрес (а именно източника на Ethernet) на искащия компютър, целевото устройство не се нуждае от друго съобщение, за да разбере това.

    Връзка с други протоколи

    След като разберете за какво служи ARP, трябва да помислите как той взаимодейства с други елементи в мрежата.

    RARP е протоколът, чрез който физическа машинав локалната мрежа може да направи заявка за откриване на своя IP адрес от таблицата с протоколи или кеширането на шлюз сървъра. Това е необходимо, тъй като устройството не може да присъства постоянно инсталиран дисккъдето може да съхранява постоянно своя IP адрес. Мрежовият администратор създава таблица в маршрутизатора на LAN шлюза, която картографира адресите физически компютър(или контрол на достъпа до медиите - MAC) със съответния "ip". Кога нова колаконфигурирана, тя клиентска програма RARP моли RARP сървъра на рутера да изпрати своя IP адрес. Ако приемем, че запис е конфигуриран в таблицата на рутера, този сървър RARP ще върне "ip" на компютъра, който може да го запази за бъдеща употреба. По този начин това също е един вид протокол за определяне на адрес.

    Механизъм в детайли

    Както машината, която прави заявката, така и сървърът, който отговаря на нея, използват физически мрежови адреси в процеса. кратка комуникация... Обикновено искащият компютър не го знае. Така заявката се изпраща до всички машини в мрежата. Сега рикуестърът трябва да се идентифицира уникално за сървъра. За да направите това, можете да използвате едно от двете сериен номерпроцесор или физически мрежови адресустройства. В същото време използването на втория като уникален идентификатор има две предимства:

    • Тези адреси са винаги налични и не са непременно свързани с кода за зареждане.
    • Тъй като идентификационните данни са специфични за мрежата и не зависят от процесора, всички машини в дадена мрежа ще предоставят уникални идентификатори.

    Подобно на ARP съобщение, RARP заявка се изпраща от един компютър на друг, капсулирана в част от данни за мрежови рамки. Ethernet рамката, която го съдържа, има обичайния преамбюл, Ethernet адреси на източник и местоназначение и полета за тип на пакета пред рамката. Рамката кодира стойността 8035, за да идентифицира съдържанието му като RARP съобщение. Частта с данни на рамката включва съобщение от 28 октета.

    Подателят изпраща RARP заявка, която се идентифицира като заявител и целевата машина и предава своя физически мрежов адрес в полето за целевия хардуерен адрес. Всички устройства в мрежата получават заявката, но само тези, които са упълномощени да предоставят RARP, обработват заявката и изпращат отговор. Такива машини са известни неофициално като сървъри. на този протокол... За да бъде ARP / RARP успешен, мрежата трябва да съдържа поне един такъв сървър.

    Те отговарят на заявка, като попълват адресното поле на целевия протокол, променят типа на съобщението от заявка на отговор и изпращат отговора директно до машината, изпращаща заявката.

    Синхронизиране на RARP транзакции

    Тъй като RARP използва директно физическа мрежа, нищо друго софтуерпротоколът не трябва да отговаря на искането или да го предава повторно. RARP софтуерът трябва да изпълнява тези задачи. Някои работни станции, които разчитат на този протокол за зареждане, избират да опитват отново безкрайно, докато получат отговор. Други реализации декларират неуспех след няколко опита да попречат на мрежата да се запълни с ненужни излъчвания.

    Предимства на многократните RARP сървъри: висока надеждност.

    Недостатък: Може да възникне претоварване, когато всички сървъри отговарят.

    По този начин, за да се избегнат недостатъците, могат да се използват първични и вторични сървъри. Всеки компютър, който иска RARP заявка, е назначен първичен сървър... Обикновено отговаря на всички повиквания, но ако не успее, тогава запитващият може да вземе тайм-аут и да предаде заявката. Ако вторият сървър получи второ копие на заявката за кратко време от първото, той отговаря. Въпреки това, все още може да има проблем, при който всички вторични сървъри реагират по подразбиране, като по този начин претоварват мрежата. По този начин проблемът е да се избегне предаването на отговори от двата сървъра по едно и също време. Всеки вторичен сървър, който приема заявката, изчислява произволно забавяне и след това изпраща отговор.

    Недостатъци на RARP

    Тъй като работи на ниско ниво, изисква директни адреси в мрежата, което затруднява приложенията да създадат сървър. Той не използва напълно възможностите на мрежа като Ethernet, която се използва за изпращане минимален пакет... Тъй като отговорът от сървъра съдържа само една малка част от информацията, 32-битов RARP интернет адрес е официално описан в RFC903.

    ICMP протокол

    Този протокол е криптиран механизъм, който шлюзовете и хостовете използват за обмен на информация за контрол или грешка. Интернет протоколът осигурява надеждна услуга за пренос на данни без връзка, дейтаграма пътува от шлюз до шлюз, докато достигне такъв, който може да я достави директно до крайната му дестинация.

    Ако шлюзът не е в състояние да маршрутизира или достави дейтаграмата или ако открие необичайно състояние, като претоварване на мрежата, което засяга способността му да препраща дейтаграмата, той трябва да инструктира оригиналния източник да предприеме действия, за да избегне или отстрани проблема .

    Свързваща връзка

    Протоколът за управление на интернет протокол позволява на шлюзовете да изпращат съобщения за грешки или да управляват съобщения до други шлюзове или хостове. ICMP осигурява комуникация между софтуера за интернет протокол между компютрите. Това е така нареченият механизъм за съобщения със специална цел, добавен от разработчиците към TCP/IP протоколите. Това позволява на шлюзовете в Интернет да съобщават за грешки или да изпращат информация за непредвидени ситуации.

    Самият IP протокол не съдържа нищо, което да помогне за свързване с тестване на изпращача или за да разберете за неуспехи. Докладите за грешки и корекциите на грешки се съобщават чрез ICMP само по отношение на оригиналния източник. То трябва да свързва грешките с индивидуалните приложни програмии предприемете действия за коригиране на проблемите. По този начин той предоставя възможност на шлюза да докладва грешка. Той обаче не дефинира напълно действията, които трябва да се предприемат за отстраняване на проблема.

    ICMP е ограничен по отношение на оригиналния източник, но не и до междинните съобщения на ICMP. Те се изпращат по интернет в част от данни от IP дейтаграма, която сама обикаля мрежата. Ето защо те са тясно свързани с ARP протокола. ICMP съобщенията се пренасочват по същия начин като дейтаграмите, съдържащи информация до потребителите, без да се налага допълнителна надеждностили приоритет.

    Има изключение за процедурите за обработка на грешки, когато има IP дейтаграма ICMP съобщенияне се генерира за грешки, които възникват от дейтаграми, съдържащи съобщения за грешки.

    ICMP формат на съобщението

    Има три полета:

    • 8-битово цяло число TYPE поле, идентифициращо съобщението;
    • 8-битово поле КОД, което предоставя Допълнителна информацияза неговия вид;
    • 16-битово поле CHECKSUM (ICMP използва същото контролна сумаалгоритъм, който обхваща само съобщението на този протокол).

    Освен това ICMP съобщенията за грешка винаги включват заглавката и водещите 64 бита от данните на дейтаграмата, причиняващи проблема.

    Заявки и отговори

    TCP / IP предоставя инструменти, които помагат на мрежовите мениджъри или потребителите да идентифицират проблеми с мрежата. Един от най-често използваните инструменти за отстраняване на грешки прави ICMP повиквания за ехо заявка и съобщения за ехо отговор. Хост или шлюз изпраща съобщение до конкретна дестинация.

    Всеки компютър, който приема ехо заявката, създава отговор и го връща на първоначалния подател. Заявката включва незадължителна зона с маршрутизирани данни. Отговорът съдържа копие на данните, изпратени в заявката. Заявката за ехо и отговорът, свързан с нея, могат да се използват за проверка на наличността на постижима цел и отговор.

    Тъй като и заявката, и отговорът се изпращат в IP дейтаграми, успешното получаване потвърждава, че системата работи правилно. За да направите това, трябва да бъдат изпълнени следните условия:

    • Изходният IP софтуер трябва да маршрутизира дейтаграмата;
    • Междинните шлюзове на местоназначението и източника трябва да работят и да насочват правилно дейтаграмата;
    • Целевият компютър трябва да работи и на него трябва да работят както ICMP, така и IP софтуер;
    • Маршрутите за връщане в шлюзовете трябва да са правилни.

    Как работи?

    ARP и ICMP са тясно свързани. Всеки път, когато грешка предотвратява маршрутизирането или доставянето на дейтаграма до шлюза, тя изпраща недостижимо съобщение обратно до източники след това изтрива дейтаграмата. Невъзстановимите мрежови проблеми обикновено включват неуспехи при трансфер на данни. Тъй като съобщението включва краткия префикс на дейтаграмата, причиняваща проблема, авторът знае точно кой адрес не е наличен. Упътването може да не е налично, защото Хардуервременно неактивен, подателят е предоставил несъществуващ адрес на местоназначение или защото шлюзът няма маршрут до целевата мрежа.

    Въпреки че шлюзовете изпращат пропуснати съобщения до предназначената им дестинация, ако не могат да маршрутизират или доставят дейтаграми, не всички такива грешки могат да бъдат открити. Ако дейтаграмата съдържа невалиден параметър на изходния маршрут, тя може да задейства съобщение за грешка в маршрута на източника.