DD-WRT를 사용하여 WAN IP 주소와 동일한 서브넷의 IP 주소에 어떻게 액세스할 수 있습니까?

DD-WRT를 사용하여 WAN IP 주소와 동일한 서브넷의 IP 주소에 어떻게 액세스할 수 있습니까?

DD-WRT v24-sp2가 설치된 라우터가 있고 내 공용 IP 주소와 동일한 서브넷 내에 구성된 다른 IP 주소에 액세스하는 데 문제가 있습니다. 내 ISP는 DHCP를 사용하여 WAN 연결을 설정해야 하므로 IP와 게이트웨이가 모두 자동으로 할당됩니다. WAN 인터페이스에 할당된 IP 주소도 공용 IP 주소입니다.

따라서 이 예를 설명하면 다음과 같습니다.

DD-WRT router -> [lan] ip: 192.168.1.1/24
                 [wan] ip: 12.34.56.78/24 (public IP)

12.34.56.0/24이제 내 이웃이 동일한 구성의 동일한 ISP를 사용하므로 동일한 공용 네트워크(예: WAN IP 주소 12.34.56.10)에 연결되어 있으며 해당 공용 IP에 일부 서비스를 노출한다고 가정해 보겠습니다 . 내가 겪고 있는 문제는 해당 서비스에 액세스할 수 없거나 내 DD-WRT 라우터나 이 라우터에 연결된 어떤 장치에서도 이웃 공용 IP를 핑할 수 없다는 것입니다.

다른 인터넷 연결을 사용할 때 이 서비스를 통해 아무런 문제 없이 액세스할 수 있으므로 이 문제가 내 DD-WRT 라우터 뒤에서만 지속된다고 100% 확신합니다.

내 라우팅 테이블은 다음과 같습니다.

root@DD-WRT:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         12.34.56.1      0.0.0.0         UG    0      0        0 vlan2
12.34.56.0      0.0.0.0         255.255.255.0   U     0      0        0 vlan2
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 br0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
192.168.66.0    192.168.66.2    255.255.255.0   UG    0      0        0 tun0
192.168.66.2    0.0.0.0         255.255.255.255 UH    0      0        0 tun0

이 문제를 해결하는 방법에 대한 아이디어가 있나요?

답변1

나도 전문가는 아니다. 비슷한 라우팅 테이블을 사용 하여 ISP( /24서브넷으로서의 WAN)와 유사한 설정을 갖고 있기 때문에 이 글을 쓰고 있습니다. 차이점은 작동한다는 것입니다. 심지어 일부 "이웃"(모두는 아니지만 허브를 공유하는 사람들)과 오고가는 패킷의 냄새를 맡을 수도 있습니다.

traceroute내 "이웃"에게 예상한 대로 단일 홉이 표시됩니다.

귀하의 경우에는 귀하와 이웃 사이에 단일 홉 연결이 없거나 어떤 이유로 인해 일부 투명한 장치가 귀하를 분리하는 것처럼 보입니다. 어느 쪽이든 귀하의 ISP 구성은 귀하가 얻는 DHCP 설정에 따라 내가 기대하는 것과 정확히 일치하지 않습니다. ISP 측에는 몇 가지 특이한 점이 있습니다. ISP가 해야 할 올바른 일은 다음과 같습니다.

  • 귀하와 귀하의 이웃이 허브, 스위치 등과 같은 투명한 장치를 통해 단일 홉으로 통신할 수 있도록 하여 이를 일반 서브넷으로 만듭니다. 또는
  • 귀하와 귀하의 이웃이 게이트웨이를 통해 두 개의 홉과 통신할 수 있도록 합니다.

스스로 시도해 볼 수 있는 것

위의 두 번째 글머리 기호는 게이트웨이를 통해 이웃과 통신하는 것이 전혀 허용되지 않는다는 의미는 아닙니다.지금. 허용되거나 허용되지 않을 수 있으며 게이트웨이는 어느 쪽이든 구성될 수 있습니다. 요점은 현재 라우팅 테이블에서는 시도하고 있지 않다는 것입니다.

라우팅 테이블의 두 번째 줄( 12.34.56.0 …)은 라우터에게 이웃에게 패킷을 보내야 할 때마다 이웃의 IP와 함께 패킷을 보내야 함을 알려줍니다.그리고하드웨어(MAC) 주소를 대상으로 합니다. 하드웨어 주소는 처음에는 알 수 없으므로 라우터가 이를 브로드캐스트합니다. 이것은 결코 이웃에게 전달되지 않으며 당신은 갇혀 있습니다.

라우팅 테이블에서 두 번째 행을 일시적으로 삭제해 보세요.

route del -net 12.34.56.0 netmask 255.255.255.0 dev vlan2

기본 동작을 수행하도록 합니다. 당신이 이웃에게 보내는 모든 패킷은 그 사람의 IP로 향하지만 게이트웨이의 하드웨어 주소로 향하게 됩니다(외부 세계와 통신할 때와 유사). 이제 이 패킷을 전달하는 것이 게이트웨이 작업입니다. 이 작업을 수행할 수도 있고 수행하지 않을 수도 있습니다.

내 경우에는 적절한 라우팅 규칙을 삭제해도 "이웃"에게 계속 연락할 수 있습니다. traceroute홉, 중간 노드는 내 ISP의 게이트웨이입니다. 문제는 응답에 있습니다. 응답은 내 "이웃" 때문에 내 하드웨어 주소로 직접 전달됩니다.변경되지 않은라우팅 테이블. 이것은 나에게는 효과가 있지만 당신에게는 효과가 없을 것입니다. 그러니 당신의 이웃~ 해야 하다같은 트릭을 수행그들의라우팅 테이블과 그 다음5월일하다.

우연히 내 "이웃" 중 한 명에 대한 관리자 액세스 권한을 갖게 되었습니다. 나는 라우팅 테이블과 내 라우팅 테이블을 변경했습니다. 그런 다음 wireshark게이트웨이를 통해(하드웨어 주소를 사용하여) 양방향으로 패킷 홉을 확인했습니다 .

그것이 당신과 당신의 이웃에게 효과가 있다면 어떻게든 이 변화를 영구적으로 만드십시오. 물론 이는 해결 방법이므로 ISP가 구성을 변경하는 것이 더 좋습니다.

관련 정보