Existe-t-il une adresse IP qui ferait en sorte que tout paquet envoyé soit ignoré (blackholed)?
Je sais que je peux toujours configurer un routeur avec une adresse IP et lui faire ensuite ignorer tous les paquets qui lui sont envoyés, mais une telle chose existe-t-elle pour me protéger des ennuis?
Il existe spécifiquement un préfixe blackhole dans IPV6, comme décrit dans RFC 6666 , il s'agit de 100 ::/64. IP4 n'a pas de trou noir explicite comme celui-là, mais un hôte inexistant sur l'un des blocs réservés aurait cet effet. (Par exemple, 240.0.0.0/4 est "réservé pour une utilisation future" et ne sera acheminé par rien.)
Il existe une chose telle que le réseau Trou noir .
S'il n'y a pas de périphériques sur le réseau avec l'adresse IP 192.168.0.10, cette adresse IP est en quelque sorte un trou noir et elle "éliminera" tout le trafic qui s'y rapporte, tout simplement parce qu'elle n'existe pas.
Les protocoles qui surveillent l'état de la connexion (TCP) peuvent détecter un hôte de destination manquant. Cela ne se produira pas avec UDP et les paquets mourront tandis que l'hôte expéditeur n'en sera pas informé.
Vous pouvez configurer un trou noir avec un pare-feu en le configurant de manière à silencieusement supprimer les paquets ( pas rejeter ) d'adresses particulières (ou de plusieurs adresses) .
Autant que je sache, il n’existe pas d’adresse réseau standard de ce type qui ferait un trou noir dans TCP/IP version 4 (Merci à Bandrami ).
Donc, vous avez deux options:
netcat
: (comme suggéré par ultrasawblade ).nc -vv -l 25 > /dev/null
écoutera les connexions entrantes sur TCP port 25 et dirigera les résultats vers /dev/null
. Plus d'exemples ici .
Le sous-réseau tout entier peut également être un trou noir ( Null route ).
Bien que ce ne soit pas un trou noir, vous pouvez également envisager les adresses IP réservées à des fins de test/exemple , en particulier si votre objectif est de: valeur "valeur par défaut non opérationnelle".
192.0.2.0/24
(TEST-NET-1),198.51.100.0/24
(TEST-NET-2)203.0.113.0/24
(TEST-NET-3)Les opérateurs de réseau DEVRAIENT ajouter ces blocs d'adresses à la liste des espaces d'adresses non routables. Si les filtres de paquets sont déployés, ce bloc d'adresses DEVRAIT être ajouté aux filtres de paquets.
Il n'y a aucune garantie que les paquets destinés à ces adresses seront bloqués (cela dépend de votre FAI, etc.), mais personne ne devrait certainement les utiliser déjà.
Il n'y a pas d '"adresse de trou noir standard" en tant que telle, et il n'y a pas non plus d'exigence. Vous ne dites pas ce que vous essayez réellement de réaliser, donc je ne peux pas vous aider à le faire, mais voici quelques solutions erronées à votre problème qui répondraient à votre question comme vous l'avez posée:
iptables -I OUTPUT -d 254.0.0.0/8 -j DROP
s'assurera que tout ce qui est envoyé à ce "réseau" sera supprimé en silence au lieu de gêner les passerelles ou même de générer du trafic sur l'interface réseau réelle.Encore une fois, vous ne voudrez probablement rien de tout cela, même si vous pensez que c'est pratique - ce n'est pas, c'est déroutant et non évident et ce n'est pas une bonne solution à votre problème.
En contournant votre question, qu’en est-il de l’utilisation du "protocole de rejet" ?
Je suggérerais probablement l’une des plages d’adresses "TEST-NET", "à utiliser dans la documentation et les exemples. Elle ne devrait pas être utilisée publiquement" .
192.0.2.0/24 198.51.100.0/24 203.0.113.0/24
Je ne sais pas trop où dire ici, cela semble être davantage une pratique qu'une passerelle Internet fournirait, plutôt qu'un moyen spécifique d'implémenter un paquet qui est acheminé quelque part où il ne devrait pas être
Il existe également une plage d'adresses en boucle, 127.0.0.0/8
, par exemple 127.0.0.255
. Bien qu'il soit encore possible que des choses existent, en particulier des services sur la machine locale, au moins vous n'interférerez pas avec les machines du réseau (à moins que vos services réseau ne soient protégés par d'autres services réseau, je suppose).
127.0.0.0/8
L’adresse illégale 0.0.0.0
peut peut-être aussi être utilisée, même si 0.0.0.0/8 est réservé à "Utilisé pour les messages diffusés au présent (" ceci ")" il y a donc un risque de diffusion à ce sujet.
0.0.0.0/8
La page Wikipedia pour une route nulle indique:
Les itinéraires nuls sont généralement configurés avec un indicateur de routage spécial, mais peuvent également être implémentés en transférant des paquets vers une adresse IP non conforme, telle que 0.0.0.0, ou l'adresse de bouclage.
Une chose à considérer (qui peut ou peut ne pas être un problème pour votre scénario particulier) est que si vous redirigez le trafic vers une adresse IP qui n'existe pas, le routeur et/ou l'hôte peut essaie en permanence d’ARP pour cette adresse, ce qui pourrait être une mauvaise chose.
Si vous configurez une liaison ARP <-> IP statique pour cette adresse fantôme, le système aura toujours une entrée ARP résolue et mettra simplement le paquet sur le fil avec cette adresse ARP (supposée fausse) et le trafic n'atterrit réellement nulle part.
Encore une fois, cela peut très bien ne PAS être ce que vous voulez réellement, mais cela vaut la peine d'être considéré.