(호기심에서) 이론적인 질문입니다. 호스트가 기본 게이트웨이로 패킷을 보냈고 패킷의 대상 주소가 서브넷의 IP 범위 내에 있는 경우 이 경우 게이트웨이는 어떻게 해야 합니까? RFC에 이에 대한 규칙이 있나요?
답변1
라우터는 이를 올바른 인터페이스로 다시 라우팅해야 합니다.
답변2
게이트웨이에는 호스트가 패킷 대상을 결정하는 데 필요한 것과 동일한 종류의 규칙이 있어야 합니다. 따라서 일반적으로 호스트는 동일한 서브넷에 있는 경우 게이트웨이로 패킷을 보내지 않습니다. '게이트웨이'라는 용어는 '외부로의 접근'을 의미합니다. 대상에게 직접 보낼 수 있다면 굳이 거치지 않아도 됩니다. 따라서 호스트에 규칙이 있고 해당 패킷을 게이트웨이로 보내는 경우에도 게이트웨이에는 "이 인터페이스의 서브넷에 대상이 있는 모든 패킷이 해당 인터페이스로 이동합니다"라는 올바른 규칙이 있습니다. 이 경우 올바르게 구성되어 있으면 단순히 전달합니다.
답변3
패킷은 항상 라우터의 IP 주소가 무엇인지 모르는 호스트로부터 라우터에 도달합니다. 라우터와 대상이 공통 서브넷에 상주한다는 것을 반드시 알 필요는 없기 때문에 더 짧은 경로가 있다는 것을 반드시 알 필요는 없습니다. 이것이 우리가 가진 이유 중 하나입니다.ICMP 리디렉션 메시지.
이것이 발생할 수 있는 한 가지 방법으로 VPN을 통해 호스트에 일시적으로 연결할 수 있는지 고려하십시오. 라우터는 호스트가 라우터로 패킷을 가져오도록 프록시 ARP를 수행해야 합니다. 호스트가 나중에 네트워크에 직접 연결되거나 VPN을 통해 다른 호스트에 연결되면 패킷이 라우터에 도달할 수 있으며 라우터는 해당 패킷을 LAN에 다시 넣어 목적지에 도달해야 합니다.
또 다른 일반적인 방법은 두 개의 서로 다른 IP 범위가 동일한 물리적 네트워크를 공유하는 경우입니다. 라우터는 각 범위에 두 개의 서로 다른 IP 주소를 가질 수 있습니다. 그리고 호스트는 IP 주소 중 하나로만 라우터를 알 수 있습니다. 다른 IP 범위의 라우터가 아닌 다른 대상으로 향하는 패킷을 전송하면 이런 일이 발생합니다.