endereço IP que é o equivalente de / dev / null

87

Existe um endereço IP que resultaria em qualquer pacote enviado para ser ignorado (blackholed)?

Eu sei que posso sempre configurar um roteador com um endereço IP e depois ignorar todos os pacotes enviados para ele, mas existe tal coisa para me poupar o problema?

    
por Tyler Durden 07.01.2014 / 18:45

8 respostas

79

Há especificamente um prefixo blackhole no IPV6, conforme descrito em RFC 6666 , é 100 :: / 64. O IP4 não possui um buraco negro explícito como esse, mas um host inexistente em um dos blocos reservados teria esse efeito. (por exemplo, 240.0.0.0/4 é "reservado para uso futuro" e não será roteado por nada.)

    
por 07.01.2014 / 19:04
41

Existe uma rede Buraco negro .

Se não houver dispositivos na rede com o endereço IP 192.168.0.10, esse endereço IP será um tipo de buraco negro e "descartará" todo o tráfego para ele, simplesmente porque ele não existe.

Os protocolos que controlam o estado da conexão (TCP) podem detectar um host de destino ausente. Isso não acontecerá com o UDP e os pacotes apenas morrerão enquanto o host de envio não for informado sobre isso.

Você pode configurar o buraco negro com o firewall configurando-o para silenciosamente eliminar pacotes ( não rejeitar ) de endereços específicos (ou muitos).

Tanto quanto eu sei, não há tal endereço padrão de rede que fará buraco negro para você em TCP / IP versão 4 (Graças a Bandrami ).

Então você tem duas opções:

  1. Um endereço IP que não foi atribuído a nenhum host;
  2. Host com firewall que silenciosamente descarta pacotes ou variações dele, por exemplo, usando netcat : (como sugerido por ultrasawblade ).

nc -vv -l 25 > /dev/null escutará as conexões de entrada na porta TCP 25 e canalizará os resultados para /dev/null . Mais exemplos aqui .

Toda a sub-rede também pode ser um buraco negro ( rota nula ).

    
por 07.01.2014 / 18:56
16

Não há "endereço blackhole padrão" como tal, nem há realmente nenhum requisito para isso. Você não diz o que está realmente tentando alcançar, então não posso ajudá-lo, mas aqui estão algumas soluções erradas para o seu problema que responderiam à sua pergunta como você perguntou:

  • Você pode usar um endereço RFC1918 que não está em uso na sua rede e confiar em seu ISP para descartá-lo para você . Por exemplo, se você estiver usando apenas algumas partes de 192.168, 10.255.255.1 seria roteado por nulo pelo seu ISP (que o obteria graças ao seu gateway padrão).
  • Você pode usar um endereço IP reservado para uso futuro (e provavelmente nunca será usado); esse é o antigo intervalo " Classe E ". Ele fará o mesmo que acima, mas funcionará mesmo se você usar todos os intervalos de endereços privados (com máscaras de rede muito mais amplas do que o necessário, duvido que você tenha milhões de dispositivos conectados). Por exemplo, 254.0.0.1 nunca se referirá (legalmente) a um dispositivo real.
  • Na máquina em que você precisa, você pode adicionar um destino somente para soltar; usando um endereço não utilizado, como o acima, por exemplo, iptables -I OUTPUT -d 254.0.0.0/8 -j DROP garantirá que qualquer coisa enviada para essa "rede" seja descartada silenciosamente em vez de incomodar qualquer gateway ou até mesmo causar tráfego na interface de rede real.

Novamente, você provavelmente não quer nada disso, mesmo se achar conveniente - não é, é confuso e não óbvio e não é uma boa solução para qualquer problema que você realmente tenha.

    
por 07.01.2014 / 19:05
15

Embora não seja um buraco negro, você também pode considerar os IPs reservados para fins de teste / exemplo , especialmente se o seu objetivo for um valor "padrão que não funciona com segurança".

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

Network operators SHOULD add these address blocks to the list of non-routeable address spaces, and if packet filters are deployed, then this address block SHOULD be added to packet filters.

Não há garantia de que os pacotes para esses endereços sejam bloqueados (depende do seu ISP, etc.), mas certamente ninguém deve usá-los.

    
por 07.01.2014 / 23:46
3

Deixando de lado sua pergunta, que tal usar o "protocolo de descarte" ?

    
por 08.01.2014 / 10:14
2

Faixas de teste

Eu provavelmente sugeriria um dos intervalos de endereços "TEST-NET", "para uso em documentação e exemplos. Ele não deve ser usado publicamente ".

192.0.2.0/24
198.51.100.0/24
203.0.113.0/24

"Bogon / Falso" Intervalo

Não sei onde dizer aqui, isso parece ser mais uma prática que um gateway de Internet forneceria, em vez de uma maneira específica de implementar um pacote roteado em algum lugar que não deveria ser

Intervalo local

Há também o intervalo de endereços de loopback, 127.0.0.0/8 , por exemplo, 127.0.0.255 . Embora ainda seja possível que existam coisas, especificamente quaisquer serviços na máquina local, pelo menos você não interferirá com nenhuma máquina na rede (a menos que você tenha serviços de rede que sejam suportados por outros serviços de rede, eu acho).

127.0.0.0/8

Intervalos de destino ilegal

Talvez o endereço ilegal 0.0.0.0 também possa ser usado, embora 0.0.0.0/8 esteja reservado para " Usado para transmitir mensagens para o atual ("this") ", portanto, há risco de transmissão sobre isso.

0.0.0.0/8

A página da Wikipédia para Rota nula afirma:

Null routes are typically configured with a special route flag, but can also be implemented by forwarding packets to an illegal IP address such as 0.0.0.0, or the loopback address.

Refs: link

    
por 24.11.2017 / 22:31
1

Uma coisa a considerar (que pode ou não ser um problema para seu cenário específico) é que, se você redirecionar o tráfego para um endereço IP que não existe, o roteador e / ou o host pode tente continuamente ARP para esse endereço, o que poderia ser uma coisa ruim.

Se você configurar uma ligação IP ARP < - > para este endereço fantasma, o sistema sempre terá uma entrada ARP resolvida e apenas colocará o pacote na rede com esse endereço ARP (que, supostamente, é falso) e o tráfego não vai realmente aterrar em qualquer lugar.

Mais uma vez, isso pode muito bem não ser o que você realmente quer, mas vale a pena considerar.

    
por 08.01.2014 / 21:21
-4

Dependendo do que você está tentando, 127.0.0.1 é um buraco negro.

link

    
por 07.01.2014 / 22:42