/ dev / null에 해당하는 IP 주소


92

전송 된 패킷이 무시 (블랙홀)되도록하는 IP 주소가 있습니까?

항상 IP 주소로 라우터를 설정할 수 있으며 전송 된 모든 패킷을 무시하도록 할 수는 있지만 문제를 해결하기 위해 그러한 것이 있습니까?


2
악의적 인 트래픽의 블랙홀로 사용될 수있는 Null 인터페이스를 사용하는 일부 장치 (San Fran cisco co.의 라우터 및 스위치 등 )가 있습니다. 해당 Null 인터페이스에 대한 경로를 지정하여 해당 경로에 대한 모든 트래픽을 삭제해야합니다.
Adriano P

12
당신은에 관심이있을 것이다 devnull-as-a-service.com
wchargin

2
궁금한데 왜 질문에 "스팸 방지"라는 태그가 있습니까?
Mike Pennington

@WChargin, 나는 그것이 농담 이었으면 좋겠다. devnull-as-a-service.com네트워킹과 관련이없는 것 같고 심지어 쓰레기처럼 보인다 . 이것은 무엇입니까 : 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 네, 웹 사이트와 마찬가지로 농담이었습니다. 그들의 참조 Github에서의 README를 : "그것은 엔터프라이즈, 클라우드, * -as-A 서비스에 대해 대부분의 과에 대한 비판. "(강조 광산)
wchargin

답변:


84

RFC 6666에 설명 된 대로 IPV6에는 특히 블랙홀 접두사가 있으며 100 :: / 64입니다. IP4에는 이와 같은 명시적인 블랙홀이 없지만 예약 된 블록 중 하나에 존재하지 않는 호스트가 그 영향을 미칩니다. (예 : 240.0.0.0/4는 "나중에 사용하기 위해 예약되어 있으며"어떤 경로로도 라우팅되지 않습니다.


32
나중에 사용하기 위해 예약 된 것으로 데이터를 전송하는 것은 나중에 사용하기 전에는 좋은 생각입니다.
corsiKa

5
IP4가 다시 확장 될 것이라는 점은 의심의 여지가 있지만 매우 좋은 지적입니다.
Bandrami

8
그러나 라우터가 패킷을 삭제하도록 보장됩니까? ICMP "대상에 도달 할 수 없음"을 반환하면 OP가 요청한 것이 아니기 때문입니다.
WGH

41

네트워크 블랙홀 과 같은 것이 있습니다.

네트워크에 IP 주소가 192.168.0.10 인 장치가없는 경우이 IP 주소는 일종의 블랙홀이며 단순히 존재하지 않기 때문에 모든 트래픽을 "삭제"합니다.

연결 상태 (TCP)를 추적하는 프로토콜은 누락 된 대상 호스트를 감지 할 수 있습니다. UDP에서는 발생하지 않으며 송신 호스트에 대해서는 알리지 않지만 패킷은 죽습니다.

특정 (또는 많은) 주소에서 패킷 을 자동으로 삭제 ( 거부하지 않음)하도록 방화벽을 설정하여 방화벽으로 블랙홀을 설정할 수 있습니다 .

내가 아는 한 TCP / IP 버전 4 ( Bankrami에 감사합니다 ) 에서 블랙홀을 수행 할 네트워크 표준 주소가 없습니다 .

따라서 두 가지 옵션이 있습니다.

  1. 호스트에 할당되지 않은 IP 주소
  2. 예를 들어 다음을 사용하여 패킷 또는 패킷의 변형을 자동으로 삭제하는 방화벽이있는 호스트 netcat( ultrasawblade에서 제안한 대로 ).

nc -vv -l 25 > /dev/nullTCP 포트 25에서 인바운드 연결을 수신하고 결과를로 파이프합니다 /dev/null. 더 많은 예제는 여기에 있습니다 .

전체 서브넷은 블랙홀 ( Null route ) 일 수도 있습니다.


4
TCP 트래픽을 수신하지만 아무 것도 수행하지 않는 것을 원하는 경우 nc(또는 netcat)로 빠른 것을 설정할 수 있습니다 . @Nikolay가 말했듯이 이것을 자동으로 수행하는 "블랙홀"IP는 없습니다.
LawrenceC

2
적어도 IP4에서
Bandrami

@Bandrami : 그렇다면 IPv6은 어떻습니까?
user2357112

2
@ user2357112, 그냥 그의 대답을보십시오 . 바로 내 아래에 있습니다.
VL-80

19

블랙홀이 아니지만 특히 목표가 "안전하게 작동하지 않는 기본값"인 경우 테스트 / 예제 목적으로 RFC 5737에 의해 설정된 IP를 고려할 수도 있습니다 .

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

네트워크 사업자는 라우팅 할 수없는 주소 공간 목록에 이러한 주소 블록을 추가해야하며, 패킷 필터가 배포 된 경우이 주소 블록을 패킷 필터에 추가해야합니다.

해당 주소로의 패킷이 차단된다는 보장 은 없지만 (ISP 등에 따라 다름) 이미 아무도 사용하지 않아야합니다.


1
또한 DROPped 대신 거부 될 수 있습니다.
mirabilos

1
192.0.2.0은 지금까지 패킷을 반환하지 않고 첫 번째 시도에서 작동하는 것 같습니다. 좀 더 테스트 해 볼게요.
Tyler Durden

16

"표준 블랙홀 주소"는 없으며 실제로 요구 사항도 없습니다. 실제로 달성하려는 것을 말하지 않으므로 도움을 드릴 수 없지만 다음과 같이 질문에 대한 답변을 제공하는 문제에 대한 잘못된 해결책이 있습니다.

  • 당신은 사용할 수 있습니다 RFC1918 주소 네트워크에서 사용하지 않을 당신을 위해 드롭하기 위해 ISP에 의존하고 있습니다. 예를 들어 192.168의 일부만 사용하는 경우 ISP에서 10.255.255.1을 Null 라우팅합니다 (기본 게이트웨이 덕분에 얻을 수 있음).
  • 나중에 사용하도록 예약 된 IP 주소를 사용할 수 있으며 사용하지 않을 수도 있습니다. 이것이 이전 " Class E "범위입니다. 위와 동일하게 작동하지만 이미 모든 개인 주소 범위를 사용하더라도 필요한 것보다 훨씬 넓은 넷 마스크를 사용함으로써 수백만 개의 연결된 장치가 있을지 의심됩니다. 예를 들어, 254.0.0.1은 실제 장치를 (법적으로) 참조하지 않습니다.
  • 필요한 머신에서 드롭 전용 대상을 추가 할 수 있습니다. 예를 들어, 위와 같은 사용되지 않는 주소를 사용하면 iptables -I OUTPUT -d 254.0.0.0/8 -j DROP게이트웨이를 방해하거나 실제 네트워크 인터페이스에서 트래픽을 발생시키는 대신 해당 "네트워크"로 전송 된 모든 항목이 자동으로 삭제됩니다.

다시 말하지만, 편리하다고 생각하더라도 실제로이 중 어느 것도 원하지 않을 것입니다. 그렇지 않습니다. 혼란스럽고 명확하지 않으며 문제가 실제로 무엇인지에 대한 좋은 해결책이 아닙니다.


254.0.0.1에 블랙홀 패킷이 없으면 "전송 실패"오류가 발생합니다.
Tyler Durden

7
"실제로이 중 어느 것도 원하지 않을 것입니다."에 +1
RBerteig


2

시험 범위

" 문서 및 예제에 사용하기 위해 "TEST-NET "주소 범위 중 하나를 제안 할 것입니다 . 공개적으로 사용해서는 안됩니다" .

192.0.2.0/24
198.51.100.0/24
203.0.113.0/24

"Bogon"(거짓 / 가짜) 범위

여기에서 어디에서 말할 지 잘 모르겠습니다. 이것은 인터넷 게이트웨이가 제공하지 않는 곳으로 라우팅되는 패킷을 구현하는 특정 방법이 아니라 인터넷 게이트웨이가 제공하는 관행에 가깝습니다.


현지 범위

루프백 주소 범위도 있습니다 ( 127.0.0.0/8예 :) 127.0.0.255. 사물, 특히 로컬 머신의 모든 서비스가 여전히 존재할 수는 있지만 적어도 네트워크상의 머신을 방해하지는 않을 것입니다 (다른 네트워크 서비스가 지원하는 네트워크 서비스가 없다면).

127.0.0.0/8


불법 목적지 범위

0.0.0.00.0.0.0/8은 "현재 메시지 ("this ")로 브로드 캐스트 메시지에 사용됨" 으로 예약되어 있기 때문에 불법 주소 도 사용될 수 있습니다. 따라서 Broatcasting의 위험이 있습니다.

0.0.0.0/8

Null 경로 상태에 대한 Wikipedia 페이지 :

널 라우트는 일반적으로 특수 라우트 플래그로 구성되지만 0.0.0.0과 같은 잘못된 IP 주소 또는 루프백 주소로 패킷을 전달하여 구현할 수도 있습니다.


참조 : https://en.wikipedia.org/wiki/Reserved_IP_addresses


트래픽이 호스트를 떠나지 않도록하기 위해 전체적으로 localhost가장 높은 포트 에서 사용하기로 결정했습니다 65535.
ThorSummoner

포트를 지정하면 TCP, UDP 등의 각 프로토콜도 지정해야합니다. 그렇게하면 일부 트래픽이 규칙 (예 : ICMP)을 벗어날 수 있습니다.
드레이크

1

고려해야 할 한 가지 사항 (특정 시나리오에서 문제가 될 수도 있고 아닐 수도 있음)은 트래픽을 존재하지 않는 IP 주소로 리디렉션하면 라우터 및 / 또는 호스트 해당 주소에 대해 ARP를 지속적으로 시도 할 수 있다는 것입니다. 나쁜 것입니다.

이 팬텀 주소에 대해 정적 ARP <-> IP 바인딩을 구성하면 시스템은 항상 해결 된 ARP 항목을 갖게되며 패킷은 해당 ARP 주소 (가상 가짜 임)로 유선에 배치됩니다. 트래픽은 실제로 어느 곳에도 도착하지 않습니다.

다시 말하지만 이것은 실제로 원하는 것이 아닐 수도 있지만 고려해 볼 가치가 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.