Як маршрутизатори призначають IP-адреси?


14

Як маршрутизатор призначає IP-адресу? Це випадково чи існує набір методів?

Здається, що той самий пристрій - незалежно від часу, коли він був підключений - здається, отримує той самий IP-адресу. Чи знає маршрутизатор MAC-адресу та присвоює той самий IP-адресу чи відбувається щось інше?


IP в мережі чи ваш особистий ПК?
Крістофер Чіпс

якщо у вас є час та турбота про те, щоб вивчити це глибоко, загляньте
Лоренцо Фон Маттерхорн,

Відповіді:


13

IPv4 адреси зазвичай призначаються за допомогою протоколу DHCP. Як це відбувається, залежить від конкретного сервера DHCP, який працює на маршрутизаторі ...

  • У DHCP адреси передаються в оренду на певний проміжок часу, тому якщо пристрій перезавантажує запит на адресу до закінчення старого терміну оренди, маршрутизатор зазвичай надає ту саму стару адресу (на основі ідентифікатора клієнта DHCP або MAC-адреси).

  • Деякі сервери DHCP пам’ятають, яка адреса була видана навіть на деякий час після закінчення терміну оренди, тому вони завжди надають однакові адреси одному пристрою.

  • Якщо пристрій раніше не бачили, це залежить від реалізації - зазвичай нову адресу вибирають випадковим чином, але іноді послідовно, а іноді на основі якогось хеша на MAC-адресу, щоб маршрутизатор хоча б намагався надати знову стара адреса.

Наприклад, цитувати сторінку dhcpd.conf(5)керівництва ISC DHCP-сервера dhcpd :

Сервер DHCP генерує список доступних IP-адрес із
хеш-таблиця. Це означає, що адреси не відсортовані в жодному пар-
тичний порядок, і тому неможливо передбачити порядок, у якому
DHCP-сервер буде виділяти IP-адреси. Користувачі попередніх версій
ISC DHCP-сервера, можливо, звикли до DHCP-сервера
розподіл IP-адрес у порядку зростання, але це більше не існує
sible, і немає способу налаштувати цю поведінку з версією 3
ISC DHCP-сервер.

Для IPv6 існує аналогічний протокол DHCPv6, до якого відповідь вище все ще стосується.

Однак у багатьох мережах використовується більш простий протокол "автоконфігурація без стану", в якому маршрутизатор транслює лише префікс (він же мережева адреса), а пристрої призначають власні IP-адреси. Призначення виконується двома способами:

  • При звичайній "автоматичній конфігурації без стану" ( RFC 4862 ) частина IP-адреси "хост" заснована на апаратній адресі пристрою . Для 48-бітних MAC-адрес другий біт перевертається і ff:feвставляється посередині (до 64 біт)

    Наприклад, префікс 2001:470:1f0b:915::/64плюс MAC-адреса 48:5d:60:e8:65:8fпризводить до отримання IP-адреси .2001:470:1f0b:915:4a5d:60ff:fee8:658f

  • З "Розширення конфіденційності" ( RFC 4941 ) частина "хост" вибирається випадковим чином - і нова адреса додається також кожні 10 годин.

    Зауважте, що "Розширення конфіденційності" майже завжди використовуються на додаток до звичайної IP-адреси на базі MAC "без стану".


Ви згадуєте IPv4, чи це якась різниця з IPv6?
agz

@agovizer: Так - я оновив відповідь.
користувач1686

Якщо це просто хеш, чи не застосовуватиметься одна IP-адреса до більш ніж одного хоста?
Pacerier

@Pacerier: Залежить від того, наскільки добре розроблений хеш, скільки IP-адрес, які ви можете вибрати, тощо. Також врахуйте, що я сказав "пробує". Якщо отримана IP-адреса вже використовується, маршрутизатор може просто призначити ще одну.
користувач1686

У випадку спеціальної мережі, як призначаються IP-адреси? Як немає центрального сервера.
pathe.kiran

4

Взагалі (для IPV4) використовувана система називається "DHCP", і працює в цілому таким чином.

  • Маршрутизатор працює "DHCP Server", в якому є таблиця з IP-адресами, яку можна використовувати.
  • Кожен комп’ютер робить запит DHCP, який в основному являє собою пакет (зі своєю MAC-адресою), що надсилається в мережу з написом "Який IP-адрес я можу мати?"
  • Маршрутизатор розглядає отриманий пакет і каже, що це ваша IP-адреса, шлюз, DNS-сервер [і все інше]
  • Потім комп'ютер налаштовує себе.

MAC-адреса може використовуватися таблицею сервера DHCP, щоб переконатися, що машина отримує однакову IP-адресу, якщо вона є щоразу доступною.


4

Я думаю, що важливо зазначити, що маршрутизатори не призначають IP-адреси : маршрутизатори отримують IP-пакет на інтерфейсі та надсилають його майже незмінним на інший інтерфейс (зміни, які я можу придумати, - це зменшення TTL та оновлення контрольної суми IP пакет; навіть зміна IP-адреси в пакеті (NAT) поза межами завдання маршрутизатора).

Пристроїв, які називаються домашніми маршрутизаторами , набагато більше, ніж маршрутизаторів, вони також включають деякі наступні функціональні можливості / послуги:

  • DHCP-сервер (це сервіс, який призначає IP-адреси),
  • ADSL модем (для узгодження з'єднання з провайдером),
  • Брандмауер (для фільтра вхідних та вихідних з'єднань),
  • Пристрій вхідного та вихідного NAT (для спільного використання єдиної адреси IPv4, призначеної провайдером для всіх пристроїв домашньої мережі),
  • Маршрутизатор,
  • Перемикач,
  • Антена WiFi,
  • Веб-сервер,
  • Консоль (веб, ssh або telnet) для налаштування пристрою,
  • Інші ...

(Примітка. Брандмауери зазвичай можуть виконувати вхідні та вихідні NAT та маршрутизацію, навіть якщо ці 4 функції можна виконати за допомогою спеціальних пристроїв.)

У великих розгортаннях Enterprise, сервер DHCP часто розміщується на спеціалізованих серверах Linux або Windows (зазвичай це кластер), які не мають нічого спільного з маршрутизаторами.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.