데비안이 인터넷 포트는 닫지만 로컬 네트워크 포트는 닫지 않는 이유

데비안이 인터넷 포트는 닫지만 로컬 네트워크 포트는 닫지 않는 이유

내 홈 네트워크에 NAT를 사용하는 홈 라우터가 있습니다. 내 IP에는 192.168.0.60작은 웹 애플리케이션을 통해 포트 5000을 수신하는 데비안 10 머신이 있습니다 . 공용 인터넷에서 이 포트에 액세스할 수 있기를 원합니다.

데비안에서는 curl localhost:5000올바른 응답을 생성합니다.

내 Mac에서는 192.168.0.55올바른 curl 192.168.0.60:5000응답이 생성됩니다.

인터넷에 연결하기 위해 라우터를 포트 전달로 구성했습니다 5000 -> 192.168.0.60:5000.

그러나 curl $PUBLIC_IP:5000외부 장치(즉, 네트워크가 아닌)에서 사용할 때는 아무 것도 얻지 못합니다.https://www.yougetsignal.com/tools/open-ports/또한 포트가 닫히게 됩니다.

내 첫 번째 추측은 이것이 라우터의 사소한 포트 전달 문제일 것이라는 것입니다. 이를 배제하기 위해 다음을 수행했습니다.

  1. 내 Mac에서 동일한 앱을 실행하고 5000을 듣습니다.
  2. 라우터의 포트 전달 규칙을 5000 -> 192.168.0.55:5000(내 Mac) 으로 변경합니다.
  3. 사용된https://www.yougetsignal.com/tools/open-ports/포트가 열려 있는지 확인

즉, 이는 라우터를 배제하고 범인을 데비안 시스템에 두는 것입니다. 이 시점에서 나는 길을 잃었습니다. 왜 로컬 네트워크에서는 컬링할 수 있지만 인터넷에서는 컬링할 수 없습니까?

iptables의 내용은 다음과 같습니다.

root@debian# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

답변1

문제는 iptables-legacy와 사이에 사소하지 않은 상호작용이 있다는 것이다 iptables. 클리어하고 나면 이제 iptables-legacy출근할 시간이 되었습니다.

관련 정보