누구든지 나를 위해 게이트웨이 할당을 명확히 할 수 있습니까?
0.0.0.0
게이트웨이를 추가하는 것과 특정 IP 주소를 게이트웨이로 할당하는 것의 차이점은 무엇입니까?
답변1
0.0.0.0
"지정되지 않음"이라는 구체적인 의미를 갖습니다. 게이트웨이의 맥락에서 이는 대략 "아무것도 없음"으로 해석됩니다. 물론 이는 중간 홉이 없기 때문에 네트워크가 로컬로 연결되어 있다고 가정합니다. 머신은 해당 네트워크 세그먼트에 연결된 머신으로 전송된 것처럼 해당 인터페이스에서 패킷을 보냅니다. 이는 이더넷에서 다음 홉 게이트웨이의 MAC 주소가 아닌 대상 호스트의 MAC 주소가 사용됨을 의미합니다.
대상으로서 0.0.0.0/0
이는 특별합니다. 네트워크 비트가 없으면 네트워크 번호에도 아무 것도 있을 수 없습니다. 그러므로 단정하는 것은 당연히 불가능하다. 접두사 일치의 경우 모든 비트를 마스크하므로 모든 주소가 0.0.0.0/0
; 따라서 라우팅 테이블에서 "기본 게이트웨이"를 나타냅니다. 이는 또한 가능한 최소 구체적인 경로이므로 특이성을 우선시하는 선택은 0.0.0.0/0
최후의 수단으로 사용 가능한 다른 모든 것을 선택하고 일치시킵니다.
그러나 귀하의 질문에 충실하면 그렇습니다. 특별한 의미가 있습니다. 이는 네트워크가 해당 인터페이스에 로컬로 연결되어 있으며 인터페이스에 도달하는 데 더 이상 홉이 필요하지 않음을 의미합니다.
답변2
위키피디아 페이지에서0.0.0.0:
발췌
인터넷 프로토콜 버전 4에서 주소 0.0.0.0은 유효하지 않거나 알 수 없거나 적용할 수 없는 대상을 지정하는 라우팅할 수 없는 메타 주소입니다. 대역 내 신호 처리를 적용하면 유효하지 않은 데이터에 특별한 의미를 부여할 수 있습니다.
위키피디아 페이지에서기본 경로.
발췌
IPv4(인터넷 프로토콜 버전 4)의 기본 경로는 CIDR 표기법으로 0 주소 0.0.0.0/0으로 지정되며, 종종 4-0 경로라고도 합니다. 서브넷 마스크는 /0으로, 모든 네트워크를 효과적으로 지정하며 가능한 가장 짧은 일치 항목입니다. 다른 경로와 일치하지 않는 경로 조회는 해당 경로로 대체됩니다. 마찬가지로 IPv6에서는 기본 경로가 ::/0으로 지정됩니다.
네트워크의 최고 수준에서 관리자는 일반적으로 특정 호스트의 기본 경로를 네트워크 서비스 공급자에 연결된 라우터로 지정합니다. 따라서 대상이 조직의 LAN 외부에 있는 패킷(일반적으로 인터넷이나 WAN의 패킷)은 해당 공급자에 연결된 라우터로 전달됩니다.
기본 경로가 가리키는 장치를 기본 게이트웨이라고도 하며 패킷 필터링, 방화벽 또는 프록시 서버 작동과 같은 다른 기능을 수행하는 경우가 많습니다.
예
귀하의 질문에 따르면 다음과 같은 상황에 처해 있다고 가정합니다.
$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
즉, 각 네트워크 대상(192.168.1.0 또는 169.254.0.0)에 대해 패킷이 다음과 같은 경우 기본 게이트웨이는 0.0.0.0 대상입니다.아니요해당 특정 네트워크 내의 모든 주소로. 0.0.0.0 대상의 경우 IP 주소 192.168.1.254를 사용합니다.
이러한 규칙의 역할은 우리가 알고 있는 경로와 일치하지 않는 모든 트래픽을 기본 경로로 보내는 것입니다.
몇 가지 예
IP 192.168.1.110의 패킷이 있다고 가정합니다. 첫 번째 규칙이 확인되고 IP가 해당 네트워크와 일치하므로 전달됩니다.
150.12.13.1에 대한 패킷이 있는 경우 세 번째 규칙이 적용되고 패킷은 192.168.1.254로 라우팅됩니다.
답변3
0.0.0.0은 라우팅 테이블에만 사용되며 호스트에는 할당되지 않습니다.
호스트(IP 주소가 있는 컴퓨터)는 올바른 위치로 메시지를 보내는 방법을 결정하기 위해 라우팅 테이블을 유지 관리합니다.
시나리오 1: PC-A는 동일한 네트워크의 PC-B에 메시지를 보내려고 합니다.
1) PC-A는 라우팅 테이블을 확인하여 대상 IP 주소와 일치하는지 확인합니다. 2) 라우팅 테이블은 목적지가 동일한 네트워크 내에 있음을 보여주고, 해당 네트워크에 연결된 인터페이스를 찾아 해당 인터페이스에서 목적지로 직접 메시지를 전달합니다.
시나리오 2: PC-A는 REMOTE NETORK(동일한 네트워크 아님)의 Server-Z에 메시지를 보내려고 합니다.
1) PC-A는 라우팅 테이블을 확인하지만 일치하는 항목을 찾을 수 없습니다(물론 호스트는 원격 네트워크의 호스트를 추적하지 않기 때문에 이것이 라우터의 작업입니다).
2) 그러나 PC는 아래와 같이 쿼드 제로 IP 주소와 라우터(다른 원격, 다른 네트워크의 기본 게이트웨이)에 매핑된 서브넷 마스크로 구성됩니다.
(0.0.0.0 0.0.0.0 192.168.0.1 인터페이스)
제로는 무엇을 의미합니까? 이는 아니오를 의미합니다. 따라서 컴퓨터가 원격 호스트의 위치를 추적하지 않고 메시지를 보내려고 할 때마다 라우팅 테이블을 확인하여 동일한(로컬) 네트워크로 보내야 하는지 또는 메시지를 보내야 하는지 확인합니다. 원격 네트워크로 보내야 하는데, 원격 네트워크로 메시지를 어떻게 보내나요?
이는 패킷을 라우터로 보내고 라우터가 최상의 경로를 따라 패킷을 라우팅하는 작업을 수행하도록 합니다. 따라서 호스트/PC/컴퓨터는 메시지를 보낼 위치(즉, 0.0.0.0)에 대한 라우팅 테이블의 항목을 찾을 수 없는 경우 해당 메시지를 IP인 라우터로 보내야 한다는 것을 알아야 합니다. (0.0.0.0 0.0.0.0 192.168.0.1 인터페이스) 항목을 사용하고 연결된 인터페이스/NIC/네트워크 어댑터를 사용합니다.
따라서 호스트와 라우터의 라우팅 테이블은 0.0.0.0을 사용하여 목적지에 도달하는 방법과 일치하는 항목이 없을 때 무엇인가를 보낼 곳을 알고, 0.0.0.0은 라우터에 도달하기 위해 라우터의 IP 주소 및 인터페이스에 매핑되어야 합니다.
답변4
기본 지침
0.0.0.0에는 특별한 의미가 있습니다기본 게이트웨이0.0.0.0과도 일치합니다.목적지입구.
언뜻 보면 어쨌든 모든 것이 기본 게이트웨이를 통과한다고 생각할 수도 있습니다. 그러나 이 개념을 완전히 이해하려면 여러 네트워크 인터페이스(이더넷, Wi-Fi, Bluetooth 등)가 있는 장치의 맥락에서 이를 보아야 합니다.
게이트웨이로
지정된 게이트웨이가 0.0.0.0이면 대상이 0.0.0.0인 행을 읽고 이 인터페이스를 통해 패킷을 라우팅한다는 의미입니다.
그러나 두 번째 이상의 네트워크 인터페이스가 있는 경우 이러한 네트워크 인터페이스 중 하나의 IP를 0.0.0.0 대신 게이트웨이로 지정할 수 있으며 패킷은 이를 통해 라우팅됩니다.
목적지로
라우팅 테이블을 구문 분석하여 가장 구체적인 대상(가장 큰 접두사 번호와 일치)을 검색합니다.
최소한 더 이상 특정 대상이 발견되지 않으면 항상 0.0.0.0/0(마스크 0.0.0.0과 0.0.0.0에 해당하는 CIDR 표기법)과 일치합니다. IP를 대상으로 하고 마스크 0.0.0.0을 사용하면 0.0.0.0 IP 자체를 포함하여 모든 IP 주소와 일치합니다.
이것이 0.0.0.0이 기본 게이트웨이 항목으로 사용되는 이유이며, 가능한 게이트웨이가 여러 개인 경우(장치에 여러 네트워크 인터페이스가 있는 경우) 특히 유용합니다.