Dirección IP que es equivalente a / dev / null

92

¿Existe una dirección IP que resultaría en que se envíe un paquete que se ignorará (bloqueado)?

Sé que siempre puedo configurar un enrutador con una dirección IP y luego hacer que ignore todos los paquetes que se le envían, pero ¿existe tal cosa para evitarme el problema?

Tyler Durden
fuente
2
Hay algunos dispositivos (como enrutadores y conmutadores de ese San Francisco Cisco co.) Que utilizan una interfaz nula que podría utilizarse como un agujero negro para el tráfico malicioso. Uno debe apuntar una ruta a esa interfaz nula para que se descarte todo el tráfico a esa ruta.
Adriano P
12
te puede interesar devnull-as-a-service.com
wchargin
2
Tengo curiosidad, ¿por qué la pregunta está etiquetada como "prevención de spam"?
Mike Pennington
@WChargin, espero que haya sido una broma, devnull-as-a-service.comno parece tener nada que ver con las redes e incluso parece una mierda . ¿Qué es este : 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
55
@Nikolay sí, fue una broma, como es el sitio web. Vea su LÉAME de Github : "Se trata principalmente de la empresa, la nube, * como servicio y las críticas al respecto " (énfasis mío)
wchargin

Respuestas:

84

Hay específicamente un prefijo de agujero negro en IPV6, como se describe en RFC 6666 , es 100 :: / 64. IP4 no tiene un agujero negro explícito como ese, pero un host inexistente en uno de los bloques reservados tendría ese efecto. (por ejemplo, 240.0.0.0/4 está "reservado para uso futuro" y no será enrutado por nada).

Bandrami
fuente
32
Enviar datos a algo reservado para uso futuro es solo una buena idea hasta que se realice ese uso futuro.
corsiKa
55
Muy buen punto, aunque dudo mucho que IP4 se ampliará mucho de nuevo.
Bandrami
8
¿Pero se garantiza que el enrutador descarte los paquetes? Porque si devuelve ICMP "destino inalcanzable", no sería lo que solicitó el OP.
WGH
41

Existe el agujero negro de la red .

Si no hay dispositivos en la red con la dirección IP 192.168.0.10, entonces esta dirección IP es un agujero negro y "descartará" todo el tráfico hacia ella, simplemente porque no existe.

Los protocolos que realizan un seguimiento del estado de conexión (TCP) pueden detectar un host de destino faltante. No ocurrirá con UDP y los paquetes simplemente morirán, mientras que el host remitente no será informado al respecto.

Puede configurar un agujero negro con cortafuegos configurándolo para soltar paquetes silenciosamente ( no rechazar ) desde direcciones particulares (o muchas).

Hasta donde sé, no existe una dirección estándar de red que haga un agujero negro para usted en TCP / IP versión 4 (Gracias a Bandrami ).

Así que tienes dos opciones:

  1. Una dirección IP que no fue asignada a ningún host;
  2. Host con cortafuegos que silenciosamente descarta paquetes o variaciones de los mismos , por ejemplo usando netcat: (como lo sugiere ultrasawblade ).

nc -vv -l 25 > /dev/nullescuchará las conexiones entrantes en el puerto TCP 25 y canalizará los resultados /dev/null. Más ejemplos aquí .

Toda la subred también puede ser un agujero negro ( ruta nula ).

VL-80
fuente
44
Si desea algo que reciba tráfico TCP, pero no haga nada, se puede configurar algo rápido con nc(o netcat). Sin embargo, como dice @Nikolay, no hay una IP de "agujero negro" que haga esto automáticamente.
LawrenceC
2
Al menos no en IP4
Bandrami
@Bandrami: ¿Qué pasa con IPv6, entonces?
user2357112
2
@ user2357112, solo mira su respuesta . Está justo debajo de la mía.
VL-80
19

Si bien no es un agujero negro, es posible que también desee considerar las IP reservadas para fines de prueba / ejemplo (por RFC 5737) , especialmente si su objetivo es un valor "predeterminado que no funciona de manera segura".

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

Los operadores de red DEBEN agregar estos bloques de direcciones a la lista de espacios de direcciones no enrutables, y si se implementan filtros de paquetes, entonces este bloque de direcciones DEBE agregarse a los filtros de paquetes.

No hay garantía de que los paquetes a esas direcciones se bloqueen (eso depende de su ISP, etc.) pero ciertamente nadie debería estar usándolos.

Darien
fuente
1
También se pueden RECHAZAR en lugar de COLOCAR, así que ...
mirabilos
1
192.0.2.0 parece funcionar en mi primer intento, sin devolver ningún paquete hasta ahora. Haré algunas pruebas más.
Tyler Durden
16

No hay una "dirección de agujero negro estándar" como tal, ni hay realmente ningún requisito para ello. No dice lo que realmente está tratando de lograr, por lo que no puedo ayudarlo a hacerlo, pero aquí hay algunas soluciones incorrectas para su problema que responderían a su pregunta tal como la hizo:

  • Puede usar una dirección RFC1918 que no esté en uso en su red y confiar en que su ISP la deje por usted. Por ejemplo, si solo usa algunas partes de 192.168, su ISP enrutará 10.255.255.1 (lo que lo obtendría gracias a su puerta de enlace predeterminada).
  • Puede usar una dirección IP reservada para uso futuro (y probablemente nunca se usará); esa es la vieja gama " Clase E ". Hará lo mismo que antes, pero funcionará incluso si ya usa todos los rangos de direcciones privadas (al tener máscaras de red mucho más amplias de lo necesario, dudo que tenga millones de dispositivos conectados). Por ejemplo, 254.0.0.1 nunca (legalmente) se referirá a un dispositivo real.
  • En la máquina donde necesita esto, puede agregar un objetivo de solo caída; el uso de una dirección no utilizada como la anterior, por ejemplo, iptables -I OUTPUT -d 254.0.0.0/8 -j DROPasegurará que todo lo que se envíe a esa "red" se descarte en silencio en lugar de molestar a las puertas de enlace o incluso causar tráfico en la interfaz de red real.

De nuevo, probablemente no quieras nada de esto, incluso si crees que es conveniente, no lo es, es confuso y no es obvio, y no es una buena solución para cualquiera que sea tu problema.

Gabe
fuente
254.0.0.1 no contiene paquetes de agujeros negros, aparece un error de "falla de transmisión".
Tyler Durden
77
+1 para "probablemente no quieras nada de esto ..."
RBerteig
2

Rangos de prueba

Probablemente sugeriría uno de los rangos de direcciones "TEST-NET", "para uso en documentación y ejemplos. No debe usarse públicamente" .

192.0.2.0/24
198.51.100.0/24
203.0.113.0/24

Gamas "Bogon" (Bogus / Falso)

No estoy seguro de dónde decir aquí, esto parece ser más una práctica que proporcionaría una puerta de enlace de Internet, en lugar de una forma específica de implementar un paquete que se enruta a algún lugar que no debería ser


Gamas locales

También hay un rango de direcciones de bucle invertido 127.0.0.0/8, por ejemplo 127.0.0.255. Aunque todavía es posible que existan cosas allí, específicamente cualquier servicio en la máquina local, al menos no interferirá con ninguna máquina en la red (a menos que tenga servicios de red respaldados por otros servicios de red, supongo).

127.0.0.0/8


Rangos de destinos ilegales

Quizás la dirección ilegal también 0.0.0.0se pueda usar, aunque 0.0.0.0/8 está reservada para "Usado para transmitir mensajes al actual (" esto ")", por lo que existe el riesgo de difusión en ese sentido.

0.0.0.0/8

La página de Wikipedia para la ruta nula dice:

Las rutas nulas generalmente se configuran con un indicador de ruta especial, pero también se pueden implementar reenviando paquetes a una dirección IP ilegal como 0.0.0.0 o la dirección de bucle invertido.


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

ThorSummoner
fuente
Sin embargo, en general opté por usar localhosten el puerto más alto 65535, porque quería asegurarme de que ningún tráfico saldría del host.
ThorSummoner
Si especifica el puerto, debe especificar también cada protocolo: TCP, UDP, etc. y al hacerlo, parte del tráfico puede escapar a sus reglas (por ejemplo, ICMP).
Drakes el
1

Una cosa a considerar (que puede o no ser un problema para su escenario particular) es que si redirige el tráfico a una dirección IP que no existe, el enrutador y / o el host pueden intentar ARP continuamente para esa dirección, lo que podría ser algo malo

Si configura un enlace IP ARP <-> estático para esta dirección fantasma, el sistema siempre tendrá una entrada ARP resuelta, y simplemente pondrá el paquete en el cable con esa dirección ARP (que, supuestamente, es falsa) y el tráfico no aterrizará en ningún lado.

De nuevo, es muy posible que esto NO sea lo que realmente quieres, pero vale la pena considerarlo.

ljwobker
fuente