Почему Windows по умолчанию использует IP-адрес 169.xx.xx.xx?

40

Моя система Windows получила 169.xx.xx.xxIP-адрес на днях, и я исправил проблему, но почему Microsoft выбрала этот адрес по умолчанию?

Почему нет 1.xx.xx.xxили 255.xx.xx.xx? Один парень из Microsoft сказал

Эй, выберите число от 1 до 255 .... кто только что сказал 169 ?! Хорошо, мы идем с этим для нашего IP-адреса Windows по умолчанию.

Адам
источник
6
На самом деле это не всегда 169.xx.xx.xx, есть еще 192.168.xx.xx, которые я видел.
Джеймс Мерц
12
169.xx.xx.xx очень специфичны по своему использованию и функциям, хотя и не связаны напрямую с использованием адресной схемы 192.168.xx.xx
Linker3000
19
Да, нет, KronoS - вы никогда не видели, чтобы Windows автоматически назначала себе IP-адрес 192.168 ... она этого не делает.
Delfuego
3
@KronoS, вы упускаете суть. 192.x адреса реальны . 169.x адреса по умолчанию означают, что компьютер фактически не подключен к сети.
CarlF
3
192.168.0.0/24 НИЧЕГО не имеет отношения к причине существования 169.254.0.0/24. ЕДИНСТВЕННОЕ, что у них общего, - это то, что они не доступны. Хватит путать эти два. Windows никогда не назначит себе адрес 192.168.0.0/24. Ни с Microsoft. Это всегда происходит от маршрутизатора или ручного назначения IP.
LawrenceC

Ответы:

65

Это не MS, это ISOC ;-)

Взгляните на зарезервированный IP-адрес RFC 5735 для специального использования IPv4: здесь

169.254.0.0/16 - Это блок "link local". Как описано в [RFC3927], он выделен для связи между хостами по одному каналу. Хосты получают эти адреса с помощью автоматической настройки, например, когда не удается найти DHCP-сервер.

Дэн М.
источник
2
Я впервые столкнулся с этим адресным пространством, когда Apple представила Bonjour .
Анника Бэкстрем
2
Это только откладывает описание «почему», однако: почему RFC 5735 выделил это конкретное «магическое число» для этого использования? Каково обоснование?
Конрад Рудольф
2
@ Конрад - я подозреваю, что часть обоснования была в том, что он был доступен.
Роб Мойр
2
@Konrad - RFC 5735 - это больше коллекция RFC, относящихся к сетевым блокам специального назначения. Фактическое «мясо и картофель», если хотите, можно найти в RFC 3927, который связан непосредственно с 5735. Почему IETF выбрал это адресное пространство для Link local? Я не могу найти причину.
Дэн М.
@DanM., Что значит "link local"? Чем 192 отличается от 169?
Pacerier
47

Использование адресов 169.xxx определено в стандарте, общеизвестном как APIPA - Автоматическая частная IP-адресация.

Короче говоря, если сетевому устройству не был назначен фиксированный (статический) адрес, и он не может получить его с помощью запроса ( DHCP ), устройство говорит себе: «Что ж, мне лучше составить собственный адрес, чтобы я может общаться в этой сети ", поэтому он назначает себе адрес APIPA, который начинается с 169.254.0.1 и продолжается до 169.254.255.254.

Если вы вдруг обнаружите, что ваш компьютер имеет адрес в пределах диапазона AIPIA, это обычно означает, что устройство в сети, выдающее адреса (сервер DHCP), по какой-то причине не может связаться; он может быть отключен или, например, ваш сетевой кабель отключился.

Linker3000
источник
1
Вы имеете в виду, что после того, как они смогут общаться с DHCP, они изменятся с 169 на 192? Это стандарт или это просто на заказ? Что если он не изменится даже после разговора с DHCP?
Pacerier
11

Чтобы сформулировать ответ Дана М в других терминах, у вашего DHCP-сервера есть проблема, и он не может выделить IP-адрес. Когда Windows и любая другая ОС настроены на получение IP через DHCP, а они не получают их, они автоматически назначают 169.254.xxx.xxx IP

icasimpan
источник
1
Я думаю, что вы имеете в виду Дэн М. Есть также альтернатива, что у вас нет DHCP-сервера в сети.
Сэмюэл Хармер