나는IP 없음이 계정은 내 집에 있는 SSH 서버에 원격으로 액세스하는 데 사용되는데 myserver.ddns.net
, 외부에서만 잘 작동합니다.
바깥으로부터:
원격 핑:
$ ping myserver.ddns.net # success
원격 SSH:
$ ssh myserver.ddns.net # success
현지에서:
로컬 핑:
$ ping 192.168.2.8 # success
로컬 SSH:
$ ssh 192.168.2.8 # success
원격 핑:
$ ping myserver.ddns.net # success, resolving to 90.113.108.192
원격 SSH:
$ ssh myserver.ddns.net # loOong time waiting, then..
Connection closed by 90.113.108.192 port 22
왜 그럴까요?
답변1
보다 정확하게 말하면 내부 네트워크에서 NAT에 액세스하는 것과 관련된 대답은 다음과 같습니다. 다음과 같은 이유로 그렇게 하고 싶지 않습니다.
- 소비자급 기술의 한계;
- 성능 이유 - NAT는 더 많은 CPU 리소스와 메모리를 사용합니다. 하지만 국내 규모에서는 문제가 되지 않습니다.
- 라우팅은 더 복잡합니다. 이를 사용하거나 디버깅하십시오.
대안은 다음과 같습니다:
- 로컬 서버에서만 액세스하는 경우 호스트 파일 항목을 만듭니다.
- 네임서버를 생성하고 공개 DNS 이름에 대한 보기를 생성합니다. 귀하가 제시하는 경우는 아니지만 일반적으로 기업에서 사용됩니다.
- 이름 서버를 만들고 ssh.home과 같은 사용자 정의 내부 이름을 만듭니다.
- BIND+RPZ를 사용하고 외부 이름을 내부 IP 주소로 다시 정의하십시오.
- 라우팅을 위해 Linux 시스템을 사용하는 경우 iptables+NAT를 사용하여 외부 IP에 대한 SSH 세션을 캡처하고 이를 내부 IP 주소에 NAT합니다.
IP 주소 캡처/호스트 파일 생성에 대한 내 의견은 집에서 DDNS 주소를 처리하는 방법에 대한 답변을 참조하세요.ISP 변경 IP 주소를 처리하는 더 나은 방법은 무엇입니까?
BIND+RPZ의 경우 다음을 참조하세요.