Che cos'è questo indirizzo IP: 169.254.169.254?


62

Ho sempre notato un IP qualcosa "169.254.xx" collegato anche quando non sono collegato a nessuna rete nel mio sistema operativo Windows.

In Linux, quando elenco la mia tabella di routing.

$ ip route show 

Ricevo una voce come

169.254.0.0/16 dev eth0  scope link  metric 1000 

Qualcuno può spiegarmi che cosa è effettivamente questo IP. Che si tratti di qualcosa di simile alla famiglia 127.0.0.0/8.

Modifica : in ec2, ogni istanza può ottenere metadati relativi ai propri inviando richieste HTTP a questo IP.

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

Quindi qualcuno può dirmi a chi è assegnato questo ip?


1
Dato che dici di vederlo nel tuo sistema operativo Windows, sembra che ti stai riferendo ad APIPA (Automatic Private IP Addressing). Maggiori informazioni qui o qui .
venomin,

1
Molto rilevante: un'analisi tecnica del Capital One Hack "Combinando l'attacco SSRF di prima con la consapevolezza che un server AWS EC2 ha accesso a un endpoint di metadati contenente credenziali temporanee, l'aggressore è stato in grado di indurre il server a fare una richiesta per il seguente URL: 169.254.169.254/iam/security-credentials . Questo endpoint ha restituito un nome ruolo ... "
David Tonhofer

Risposte:


89

Questi sono indirizzi locali di collegamento configurati dinamicamente . Sono validi solo su un singolo segmento di rete e non devono essere instradati.

In particolare, 169.254.169.254 viene utilizzato in Amazon EC2 e altre piattaforme di cloud computing per distribuire metadati a istanze cloud .


1
Quindi puoi dirmi che 169.254.169.154 è assegnato a chi in ec2.
pradeepchhetri,

18
Il testo blu indica un collegamento su cui è possibile fare clic per ulteriori informazioni. Per favore fallo.
Michael Hampton

Ma non viene menzionato nulla a cui questo ip è assegnato a ... per quanto riguarda gli interni in termini di virtualizzazione.
pradeepchhetri,

6
@pradeepchhetri Non è assegnato a nessuno. È un indirizzo di uso speciale .
Michael Hampton

1
@pradeepchhetri, per rispondere alla domanda specifica di "chi", sono gli stessi Amazon (anche se si applica l'avvertenza di essere un IP privato); allo stesso modo in cui Charter "possiede" 192.168.100.1 in molte famiglie (solo Charter lo utilizza per la WebUI del modem anziché per il servizio Amazon di distribuzione di metadati).
JamesTheAwesomeDude,

13

In quasi tutte le circostanze si tratta di un IP assegnato automaticamente da un'interfaccia impostata per ottenere il suo IP tramite DHCP ma non può ottenerne uno.


10

È un indirizzo locale di collegamento IPv4, come definito in rfc3927. Solitamente le caselle abilitate ZeroConfig / Bonjour / mdns et al sono configurate per avere l'indirizzo IPv4 ll per abilitare la rete (domestica) senza la presenza di un server DHCP o unicast DNS.


3

Questo è un caso speciale di un indirizzo APIPA. L'OP non richiede 169.254.xx

Oltre ad essere un indirizzo APIPA, questo è l'indirizzo interno utilizzato dalle istanze AWS EC2 per le query EC2META via HTTP (curl, diciamo).

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

restituirà l'id dell'istanza senza una nuova riga, questo è utile per gli script. Non è usato per "distribuire" i metadati, piuttosto per interrogare questi attributi.


1
" Questo è un caso speciale di un indirizzo APIPA. Tale uso non è consentito dall'RFC. Gli indirizzi in 169.254.0.0/16non possono essere assegnati in modo fisso, non è possibile subnetare l'intervallo e non è possibile instradare i pacchetti nell'intervallo. Non userei nulla che violi lo standard.
Ron Maupin,

D'accordo, suppongo che AWS ritenga di poter garantire che RFC non si applicherebbe mai all'interno delle proprie reti interne a causa di un errore DHCP. L'intervallo viene utilizzato anche per l'assegnazione IP statica per reti ad hoc peer to peer, ma in genere vengono scelti numeri bassi.
mckenzm,

1
" Si noti che gli indirizzi nel prefisso 169.254 / 16 NON DOVREBBERO essere configurati manualmente o da un server DHCP. La configurazione manuale o DHCP può far sì che un host usi un indirizzo nel prefisso 169.254 / 16 senza seguire le regole speciali relative al rilevamento duplicato e alla configurazione automatica che riguardano gli indirizzi in questo prefisso. "Ciò significa che non è possibile impostare un indirizzo fisso in quell'intervallo. Un host deve selezionare casualmente un indirizzo nell'intervallo.
Ron Maupin,

1
"Gli amministratori che desiderano configurare i propri indirizzi locali (utilizzando la configurazione manuale, un server DHCP o qualsiasi altro meccanismo non descritto in questo documento) dovrebbero utilizzare uno dei prefissi degli indirizzi privati ​​esistenti [RFC1918], non il prefisso 169.254 / 16 "
Ron Maupin,

1
Dice che NON DOVREBBE, NON DEVE. Tecnicamente puoi violare DOVREBBE essere comunque considerato conforme alle specifiche. Vedere RFC2919: "NON DOVREBBE che questa frase o la frase" NON RACCOMANDATO "significano che possono esistere ragioni valide in circostanze particolari in cui il comportamento particolare è accettabile o addirittura utile, ma le implicazioni complete dovrebbero essere comprese e il caso attentamente valutato prima di implementare qualsiasi comportamento descritto con questa etichetta ". :)
mmalone il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.