[linux] ssh : 호스트 이름 [hostname]을 (를) 확인할 수 없습니다 : nodename 또는 servname 제공 또는 알 수 없음

Raspberry Pi로 VPN을 설정하려고하는데 첫 번째 단계는 ssh로컬 네트워크 외부에서 장치에 액세스 하는 기능을 얻는 것 입니다. 어쨌든 이것이 불가능하다는 것을 증명하고 있으며 그 이유를 전혀 알지 못합니다. ssh로 서버에 접속 하려고 user@hostname하면 오류가 발생합니다.

ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known

그러나 다음을 사용하여 서버에 로그인 할 수 있습니다.

ssh user@[local IP]

서버는 최신 Raspbian 배포판을 실행하는 Raspberry Pi Model B이며 연결하려는 시스템은 Mavericks를 실행하는 Macbook Pro입니다. sshRaspbian을 설정할 때 Raspberry Pi에서 활성화되었습니다.

다른 사람 이이 문제가 있는지 확인하려고 몇 시간 동안 스택 오버플로를 익히고 아무것도 찾지 못했습니다. ssh내가 찾은 모든 자습서는 원격 컴퓨터에서 설정하고 호스트 이름을 사용하여 어디서나 로그인 할 수 있어야한다고 말했지만 성공하지 못했습니다.



답변

최근에 같은 문제가 발생했습니다. 네트워크의 파이로 ssh를 할 수 있었지만 홈 네트워크 외부에서는 오지 못했습니다.

나는 이미했다 :

  • 내 홈 네트워크에 ssh를 설치하고 테스트했습니다.
  • 내 pi의 고정 IP를 설정하십시오.
  • 동적 DNS 서비스를 설정하고 내 pi에 소프트웨어를 설치했습니다. 정적 ip를 설정하기 위해 이러한 지침 을 참조 했으며 더 많은 지침 리소스가 있습니다.

또한 웹 사이트를 호스팅하기 위해 라우터에서 포트 전달을 설정했으며 포트 22를 ssh의 고정 IP로 고정했습니다. 그러나 포트 전달을 수행하는 응용 프로그램을 지정하는 필드를 비워 두었습니다. 라우터. 어쨌든이 필드에 ‘ssh’를 추가했습니다. 어디서나 내 파이에 작동하는 ssh 연결.

라우터의 포트 포워딩 설정을 작성하겠습니다.

(ApplicationTextField) _ssh (외부 포트) _22 (내부 포트) _22 (프로토콜) _ 둘 다 (IP 주소로) _192.168.1. ### (사용) _checkBox

포트 전달 설정은 라우터마다 다를 수 있으므로 라우터의 방향을 찾으십시오.

이제 홈 네트워크 외부에있을 때 다음을 입력하여 pi에 연결합니다.

ssh pi @ [호스트 이름]

그런 다음 비밀번호를 입력하고 연결할 수 있습니다.


답변

Mac을 사용하는 경우 DNS 응답자를 다시 시작하면 문제가 해결되었습니다.

sudo killall -HUP mDNSResponder


답변

원격 컴퓨터에 연결하는 것과 동일한 문제가 발생했습니다. 하지만 아래와 같이 로그인 할 수있었습니다.

ssh -p 22 myName@hostname

또는:

ssh -l myName -p 22 hostname


답변

전세계 어디에서나 VPN에 액세스해야하는 경우 도메인 이름을 등록하고 VPN / 네트워크 게이트웨이의 공용 IP 주소를 가리켜 야합니다. 동적 DNS 서비스를 사용하여 호스트 이름을 공개 IP에 연결할 수도 있습니다.

Mac에서 로컬 네트워크 내부의 Raspberry로만 ssh해야하는 경우 다음과 같이하십시오. Mac에서을 편집하십시오 /etc/hosts. 라즈베리에 호스트 이름이 “berry”이고 IP가 “172.16.0.100”이라고 가정하면 한 줄을 추가하십시오.

# ip           hostname
172.16.0.100   berry

지금 : ssh user@berry작동합니다.


답변

호스트 이름에 .local을 추가하여 해결할 수있는 동일한 문제가 발생했습니다. ssh user@hostname.local


답변

내 경우에는이 같은 ssh를 시도했다

ssh pedro@192.168.2.179:22

올바른 형식이 다음과 같은 경우 :

ssh pedro@192.168.2.179 -p 22


답변

명령이 다음과 같은 경우 :

$ ssh -p 1122  path/to/pemfile user@[hostip/hostname]

또한 같은 오류가 발생합니다

ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known

-i /path/to/pemfilessh 옵션을 놓치면

따라서 명령은 다음과 같아야합니다.

$ ssh -p 1122 -i path/to/pemfile user@[hostip/hostname]