Indirizzo IP equivalente a / dev / null


92

Esiste un indirizzo IP che provocherebbe l'ignoramento (blackhol) di qualsiasi pacchetto inviato?

So di poter sempre configurare un router con un indirizzo IP e poi semplicemente ignorare tutti i pacchetti che gli vengono inviati, ma esiste una cosa del genere per salvarmi il problema?


2
Ci sono alcuni dispositivi (come router e switch da quel San Francisco cisco co.) Che utilizzano un'interfaccia Null che potrebbe essere utilizzata come buco nero per il traffico dannoso. Si dovrebbe puntare una rotta verso quell'interfaccia Null in modo da eliminare tutto il traffico verso quella rotta.
Adriano P,

12
potresti essere interessato a devnull-as-a-service.com
wchargin

2
Sono curioso, perché la domanda è taggata "prevenzione dello spam"?
Mike Pennington,

@WChargin, spero che sia stato uno scherzo - devnull-as-a-service.comnon sembra avere nulla a che fare con il networking e persino sembra una schifezza . Che cosa è questo : When we say "government" we mean NSA, CIA, FBI, TSA, Communist Party of China (CPC), Nestle, The Coca-Cola Company, the KGB, some of your coworkers and our friends (especially if there is something funny).?
VL-80,

5
@Nikolay sì, era uno scherzo, così come il sito web. Guarda il loro README di Github : "Riguarda principalmente l'impresa, il cloud, * -as-a-Service e le critiche su di esso " (enfasi mia)
wchargin,

Risposte:


84

Esiste in particolare un prefisso blackhole in IPV6, come descritto in RFC 6666 , è 100 :: / 64. IP4 non ha un buco nero esplicito come quello, ma un host inesistente su uno dei blocchi riservati avrebbe quell'effetto. (ad es. 240.0.0.0/4 è "riservato per uso futuro" e non verrà indirizzato da nulla.)


32
L'invio di dati a qualcosa riservato per un uso futuro è solo una buona idea fino a quando non verrà realizzato quell'uso futuro.
corsiKa

5
Ottimo punto, anche se dubito fortemente che IP4 verrà ampliato di nuovo molto.
Bandrami,

8
Ma il router è sicuro di rilasciare i pacchetti? Perché se restituisce "destinazione irraggiungibile" ICMP, non sarebbe ciò che l'OP ha richiesto.
WGH,

41

Esiste qualcosa come il buco nero della rete .

Se non ci sono dispositivi nella rete con indirizzo IP 192.168.0.10, questo indirizzo IP è una specie di buco nero e "scarterà" tutto il traffico verso di esso, semplicemente perché non esiste.

I protocolli che tengono traccia dello stato della connessione (TCP) possono rilevare un host di destinazione mancante. Non accadrà con UDP e i pacchetti moriranno mentre l'host di invio non ne sarà informato.

È possibile impostare il buco nero con il firewall impostandolo per eliminare silenziosamente i pacchetti ( non rifiutarli ) da determinati (o molti) indirizzi.

Per quanto ne so, non esiste un indirizzo di rete standard che crei buco nero per te nella versione 4 di TCP / IP (grazie a Bandrami ).

Quindi hai due opzioni:

  1. Un indirizzo IP che non è stato assegnato a nessun host;
  2. Host con firewall che rilascia silenziosamente pacchetti o varianti di esso, ad esempio usando netcat: (come suggerito da ultrasawblade ).

nc -vv -l 25 > /dev/nullascolterà le connessioni in entrata sulla porta TCP 25 e reindirizzerà i risultati /dev/null. Altri esempi qui .

L'intera sottorete può anche essere un buco nero ( percorso Null ).


4
Se vuoi qualcosa che riceverà il traffico TCP, ma non farci nulla, puoi impostare qualcosa di veloce con nc(o netcat). Come dice @Nikolay, tuttavia, non esiste un IP "blackhole" che lo fa automaticamente.
LawrenceC,

2
Almeno non in IP4
Bandrami il

@Bandrami: che dire di IPv6, allora?
user2357112

2
@ user2357112, basta guardare la sua risposta . È proprio sotto il mio.
VL-80,

19

Anche se non è un buco nero, potresti anche prendere in considerazione gli IP riservati a scopo di test / esempio (da RFC 5737) , soprattutto se il tuo obiettivo è un valore "default non funzionante in sicurezza".

  • 192.0.2.0/24 (TEST-NET-1),
  • 198.51.100.0/24 (TEST-NET-2)
  • 203.0.113.0/24 (TEST-NET-3)

Gli operatori di rete DOVREBBERO aggiungere questi blocchi di indirizzi all'elenco di spazi di indirizzi non instradabili e, se vengono distribuiti filtri di pacchetti, questo blocco di indirizzi DOVREBBE essere aggiunto ai filtri di pacchetti.

Non vi è alcuna garanzia che i pacchetti per quegli indirizzi vengano bloccati (dipende dal proprio ISP, ecc.) Ma sicuramente nessuno dovrebbe già usarli.


1
Possono anche essere rifiutati invece di DROPped, quindi ...
mirabilos

1
192.0.2.0 sembra funzionare al mio primo tentativo, non restituendo alcun pacchetto finora. Farò altri test.
Tyler Durden,

16

Non esiste un "indirizzo blackhole standard" in quanto tale, né esiste alcun requisito per questo. Non dici ciò che stai effettivamente cercando di ottenere, quindi non posso aiutarti a farlo, ma qui ci sono alcune soluzioni sbagliate per il tuo problema che risponderebbero alla tua domanda come hai chiesto:

  • Puoi utilizzare un indirizzo RFC1918 che non è in uso sulla tua rete e fare affidamento sul tuo ISP per rilasciarlo. Ad esempio, se stai usando solo alcune parti di 192.168, 10.255.255.1 verrebbe indirizzato dal tuo ISP (il che lo otterrebbe grazie al tuo gateway predefinito).
  • È possibile utilizzare un indirizzo IP riservato per uso futuro (e probabilmente non verrà mai utilizzato); questa è la vecchia gamma " Classe E ". Funzionerà come sopra, ma funzionerà anche se utilizzi già tutti gli intervalli di indirizzi privati ​​(avendo maschere di rete molto più ampie del necessario, dubito che avrai milioni di dispositivi collegati). Ad esempio, 254.0.0.1 non farà mai (legalmente) riferimento a un dispositivo reale.
  • Sul computer in cui è necessario, è possibile aggiungere una destinazione di solo rilascio; l'utilizzo di un indirizzo inutilizzato come quello sopra, ad esempio, iptables -I OUTPUT -d 254.0.0.0/8 -j DROPgarantirà che qualsiasi cosa inviata a quella "rete" venga automaticamente eliminata invece di disturbare qualsiasi gateway o addirittura causare traffico sull'interfaccia di rete effettiva.

Ancora una volta, probabilmente non vuoi davvero nulla di tutto questo, anche se pensi che sia conveniente - non lo è, è confuso e non ovvio e non è una buona soluzione a qualunque sia il tuo problema.


254.0.0.1 non contiene pacchetti di buchi neri, viene visualizzato l'errore "errore di trasmissione".
Tyler Durden,

7
+1 per "probabilmente non vuoi proprio niente di tutto questo ..."
RBerteig,


2

Gamme di prova

Suggerirei probabilmente uno degli intervalli di indirizzi "TEST-NET", "per l'uso in documentazione ed esempi. Non dovrebbe essere usato pubblicamente" .

192.0.2.0/24
198.51.100.0/24
203.0.113.0/24

Gamme "Bogon" (Bogus / Fake)

Non sono sicuro di dove dire qui, questa sembra essere più una pratica che fornirebbe un gateway Internet, piuttosto che un modo specifico per implementare un pacchetto che viene instradato da qualche parte che non dovrebbe essere


Gamme locali

Esiste anche un intervallo di indirizzi di loopback 127.0.0.0/8, ad es 127.0.0.255. Anche se è ancora possibile che esistano cose lì, in particolare qualsiasi servizio sulla macchina locale, almeno non interferirai con nessuna macchina sulla rete (a meno che tu non abbia servizi di rete supportati da altri servizi di rete, suppongo).

127.0.0.0/8


Range di destinazione illegali

Forse anche l'indirizzo illegale 0.0.0.0può essere usato, anche se 0.0.0.0/8 è riservato a "Usato per trasmettere messaggi all'attuale (" questo ")", quindi c'è il rischio di fare broatcasting su quello.

0.0.0.0/8

La pagina Wikipedia per Null Route afferma:

Le route null sono in genere configurate con un flag di route speciale, ma possono anche essere implementate inoltrando i pacchetti a un indirizzo IP illegale come 0.0.0.0 o all'indirizzo di loopback.


Rif: https://en.wikipedia.org/wiki/Reserved_IP_addresses


In generale, ho optato per l'uso localhostsulla porta più alta 65535, perché volevo assicurarmi che nessun traffico avrebbe lasciato l'host.
ThorSummoner,

Se si specifica la porta, è necessario specificare anche ciascun protocollo: TCP, UDP, ecc. E, in tal modo, parte del traffico potrebbe sfuggire alle proprie regole (ad es. ICMP).
Drakes,

1

Una cosa da considerare (che può essere o meno un problema per il tuo particolare scenario) è che se reindirizzi il traffico verso un indirizzo IP che non esiste, il router e / o l'host potrebbero tentare di ARP continuamente per quell'indirizzo, che potrebbe essere una brutta cosa.

Se si configura un'associazione IP ARP <-> statica per questo indirizzo fantasma, il sistema avrà sempre una voce ARP risolta e inserirà semplicemente il pacchetto sul filo con quell'indirizzo ARP (che, presumibilmente, è falso) e il traffico in realtà non atterrerà da nessuna parte.

Ancora una volta, questo potrebbe benissimo NON essere quello che vuoi davvero, ma vale la pena considerare.

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.