ssh: не удалось разрешить имя хоста [имя хоста]: nodename или servname предоставлено или неизвестно
Я пытаюсь настроить VPN с помощью Raspberry Pi, и первым шагом является получение возможности ssh в устройство извне локальной сети. По какой причине это оказывается невозможным, и я не имею ни малейшего понятия, почему. Когда я пытаюсь ssh на мой сервер с user@hostname, Я получаю ошибку:
ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known
однако, я могу войти на сервер с помощью,
ssh user@[local IP]
сервер представляет собой Raspberry Pi Model B с последним дистрибутивом Raspbian и машина, с которой я пытаюсь подключиться к нему, - это Macbook Pro под управлением Mavericks. ssh был включен на Raspberry Pi, когда я настроил Raspbian.
Я просматривал переполнение стека в течение нескольких часов, пытаясь увидеть, если кто-то еще имел эту проблему, и я ничего не нашел. Каждый ssh учебник, который я нахожу, говорит, что я должен просто настроить его на удаленной машине и войти в систему из любого места, используя имя хоста, и у меня никогда не было успеха с этим.
10 ответов:
недавно я столкнулся с той же проблемой. Я смог ssh к моему pi в моей сети, но не из-за пределов моей домашней сети.
У меня уже было:
- установлен и протестирован ssh в моей домашней сети.
- установите статический IP для моего pi.
- настройка динамической службы DNS и установка программного обеспечения на моем pi. Я ссылался на эти - инструкции для настройки статического ip, и есть еще много учебных ресурсов там.
кроме того, я настроил Port forward на своем маршрутизаторе для размещения веб-сайта, и у меня даже был порт forward port 22 для статического IP-адреса моего pi для ssh, но я оставил поле пустым, где вы указываете приложение, для которого вы выполняете переадресацию портов на маршрутизаторе. В любом случае, я добавил " ssh " в это поле и, вуаля! Рабочее ssh-соединение из любого места на мой pi.
Я запишу настройки переадресации портов моего маршрутизатора.
(ApplicationTextField)_ssh (внешний порт)_22 (внутренний порт)_22 (протокол)_Both (на IP-адрес) _192.168.1.### (Включен)_checkBox
настройки переадресации портов могут быть разными для разных маршрутизаторов, поэтому посмотрите направления для вашего маршрутизатора.
теперь, когда я нахожусь вне своей домашней сети, я подключаюсь к своему pi, набрав:
ssh pi@[имя хоста]
тогда я могу ввести свой пароль и подключаться.
у меня была такая же проблема с подключением к удаленной машине. но мне удалось войти, как показано ниже:
ssh -p 22 myName@hostnameили:
ssh -l myName -p 22 hostname
Если вы находитесь на Mac, перезапуск DNS-ответчика исправил проблему для меня.
sudo killall -HUP mDNSResponder
Если вам нужен доступ к VPN из любой точки мира, вам нужно зарегистрировать доменное имя и указать его на общедоступный ip-адрес вашего VPN/сетевого шлюза. Вы также можете использовать динамическую службу DNS для подключения имени хоста к общедоступному ip-адресу.
Если вам нужно только ssh с вашего Mac на ваш Raspberry внутри вашей локальной сети, сделайте это: на вашем Mac, редактировать
/etc/hosts. Предполагая, что малина имеет имя хоста "berry" и ip "172.16.0.100", добавьте один линия:# ip hostname 172.16.0.100 berryТеперь:
ssh user@berryдолжны работать.
У меня была та же проблема, которую я смог решить, добавив a .локальный для имени хоста, ala
ssh [email protected]
если ваша команда:
$ 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/pemfileСШпоэтому команда должна быть:
$ ssh -p 1122 -i path/to/pemfile user@[hostip/hostname]
У меня была та же проблема: адрес, показанный в настройках -> общий доступ -> удаленный вход не работал, и я получил '... nodename или servname предоставляются, или не известны'. Однако, когда я вручную отредактировал настройки (в настройках -> общий доступ -> удаленный вход -> редактировать) и включил "использовать динамическое глобальное имя хоста", это внезапно сработало.
это происходило со мной при попытке получить доступ к Github. Проблема в том, что я имел привычку делать:
git remote add <xyz> ssh:\[email protected]......но, если у вас есть эта ошибка из вопроса, удаление
ssh:\может решить проблему. Это решило все за меня!обратите внимание, что вам придется делать
git remote remove <xyz>и повторно добавить удаленный url безssh:\.
мне нужно было подключиться к удаленному серверу Amazon
ssh -i ~/.ssh/test.pem -fN -L 5555:localhost:5678 [email protected]Я получаю следующую ошибку.
ssh: Could not resolve hostname <hostname.com>: nodename nor servname provided, or not knownрешение для Mac OSX
Pinging хост решил проблему. Я использую Mac OSX Seirra.
ping hostname.comтеперь проблема решена. Возможность подключения к серверу.
Примечание: я пробовал данное решение также. Но из этого ничего не вышло. Затем
pingрешен вопрос.
попробуйте это, учитывая ваши разрешенные порты. Храните ваш в своем
Documentsпапка, например.чтобы получить доступ к нему теперь все, что вам нужно сделать, это
cd [directory], который перемещает вас в каталог выделенного файла. Вы можете сначала ввестиls, чтобы перечислить содержимое каталога, в котором вы находитесь в данный момент:ls cd /Documents chmod 400 mycertificate.pem ssh -i "mycertificate.pem" [email protected] -p 80


Comments