Co to jest ten adres IP: 169.254.169.254?


62

Zawsze zauważyłem dołączony adres IP „169.254.xx”, nawet jeśli nie mam połączenia z żadną siecią w systemie operacyjnym Windows.

W Linuksie, kiedy wymieniam moją tabelę routingu.

$ ip route show 

Dostaję wpis jak

169.254.0.0/16 dev eth0  scope link  metric 1000 

Czy ktoś może mi wyjaśnić, co to właściwie jest ten ip. Czy to coś w rodzaju rodziny 127.0.0.0/8.

Edycja : W ec2 każda instancja może uzyskać własne meta-dane, wysyłając żądania HTTP do tego adresu IP.

$ curl -s http://169.254.169.254/user-data/

Czy ktoś może mi powiedzieć, do kogo ten adres IP jest faktycznie przypisany?


1
Ponieważ mówisz, że widzisz to w swoim systemie operacyjnym Windows, brzmi to tak, jakbyś miał na myśli APIPA (automatyczne prywatne adresowanie IP). Więcej informacji tutaj lub tutaj .
jad

1
Bardzo istotne: Analiza techniczna hacka Capital One „Łącząc wcześniejszy atak SSRF ze świadomością, że serwer AWS EC2 ma dostęp do punktu końcowego metadanych zawierającego tymczasowe dane uwierzytelniające, osoba atakująca była w stanie nakłonić serwer do wysłania żądania następujący adres URL: 169.254.169.254/iam/security-credentials . Ten punkt końcowy zwrócił nazwę roli ... ”
David Tonhofer,

Odpowiedzi:


89

Są to dynamicznie konfigurowane adresy lokalne dla łącza . Są ważne tylko w jednym segmencie sieci i nie mogą być trasowane.

Na szczególną uwagę zasługuje 169.254.169.254 w Amazon EC2 i innych platformach przetwarzania w chmurze w celu dystrybucji metadanych do wystąpień w chmurze .


1
Więc możesz mi powiedzieć, że 169.254.169.154 jest przypisany do kogo w ec2.
pradeepchhetri

18
Niebieski tekst oznacza link, który można kliknąć, aby uzyskać więcej informacji. Zrób tak, proszę.
Michael Hampton

Ale nic nie wspomniano, do kogo ten ip jest przypisany ... w odniesieniu do elementów wewnętrznych pod względem wirtualizacji.
pradeepchhetri

6
@pradeepchhetri Nie jest przypisany do nikogo. To adres specjalnego przeznaczenia .
Michael Hampton

1
@pradeepchhetri, aby odpowiedzieć na konkretne pytanie „kto”, to sami Amazon (choć obowiązuje zastrzeżenie, że jest to prywatny adres IP); w ten sam sposób, w jaki Charter „posiada” 192.168.100.1 w wielu gospodarstwach domowych (tylko Charter używa go do modemu WebUI zamiast do usługi dozowania metadanych przez Amazon).
JamesTheAwesomeDude

13

W prawie wszystkich okolicznościach jest to adres IP przydzielany automatycznie przez interfejs ustawiony na pobieranie adresu IP przez DHCP, ale nie może go uzyskać.


10

Jest to lokalny adres łącza IPv4, zgodnie z definicją w rfc3927. Zazwyczaj włączone pola ZeroConfig / Bonjour / mdns i in. Są skonfigurowane tak, aby miały adres IPv4 II, aby umożliwić (domowe) połączenie sieciowe bez obecności serwera DNS lub serwera DNS emisji pojedynczej.


3

Jest to szczególny przypadek adresu APIPA. OP nie prosi o 169.254.xx

Oprócz tego, że jest to adres APIPA, jest to adres wewnętrzny używany przez instancje AWS EC2 dla zapytań EC2META przez HTTP (powiedzmy curl).

curl http://169.254.169.254/latest/meta-data/instance-id

zwróci identyfikator instancji bez nowego wiersza, jest to przydatne w skryptach. Nie służy do „rozpowszechniania” metadanych, lecz do zapytania tych atrybutów.


1
Jest to szczególny przypadek adresu APIPA. Takie użycie nie jest dozwolone przez RFC. Adresom 169.254.0.0/16nie można przypisać w ustalony sposób, zakresu nie można podsieciować, a pakietów w zakresie nie można routować. Nie użyłbym niczego, co naruszałoby standard
Ron Maupin,

Zgadzam się, sądzę, że AWS może zagwarantować, że RFC nigdy nie zastosuje się w ich wewnętrznych sieciach z powodu awarii DHCP. Zakres ten jest również wykorzystywany do statycznego przypisywania adresów IP w sieciach ad hoc typu peer to peer, ale generalnie wybiera się niskie liczby.
mckenzm

1
Pamiętaj, że adresy w prefiksie 169.254 / 16 NIE POWINNY być konfigurowane ręcznie ani przez serwer DHCP. Konfiguracja ręczna lub DHCP może spowodować, że host użyje adresu w prefiksie 169.254 / 16 bez przestrzegania specjalnych zasad dotyczących wykrywania duplikatów i automatycznej konfiguracji odnoszą się do adresów w tym prefiksie. ”Oznacza to, że nie można ustawić stałego adresu w tym zakresie. Host musi losowo wybrać adres z zakresu.
Ron Maupin,

1
Administratorzy, którzy chcą skonfigurować własne adresy lokalne (przy użyciu konfiguracji ręcznej, serwera DHCP lub innego mechanizmu nieopisanego w tym dokumencie), powinni użyć jednego z istniejących przedrostków adresów prywatnych [RFC1918], a nie przedrostka 169.254 / 16
Ron Maupin,

1
Mówi, że NIE POWINIENE, NIE MUSI NIE. Z technicznego punktu widzenia możesz naruszyć POWINIEN i nadal uważać, że jest zgodny ze specyfikacją. Patrz RFC2919: „NIE POWINNY BYć To wyrażenie lub wyrażenie„ NIE ZALECANE ”oznaczają, że mogą istnieć ważne powody w szczególnych okolicznościach, gdy dane zachowanie jest dopuszczalne lub nawet przydatne, ale pełne implikacje powinny zostać zrozumiane, a sprawa dokładnie rozważona przed wdrożeniem wszelkie zachowania opisane za pomocą tej etykiety ”. :)
mmalone
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.