У меня есть два ноутбука и один настольный компьютер в моем доме, всей под управлением Ubuntu 18.04. Openssh-сервер и ssh установлены на каждом из них. Однако я не могу войти в систему от одного из них на другого из них; например, когда на компьютере с Машиной имени хоста 1, попытка войти к Машине в 2 использования:
ssh <mylogin-name>@Machine-2
сбои. Я попытался редактировать /etc/hosts
, и файлы в /etc/ssh
. Я думаю, что мою проблему должно быть легко решить; помогите значительно ценивший.
$ ssh -v saul@NullA-3
OpenSSH_7.6p1 Ubuntu-4ubuntu0.1, OpenSSL 1.0.2n 7 Dec 2017
debug1: Connecting to nulla-3 [192.168.1.5] port 22.
debug1: connect to address 192.168.1.5 port 22: No route to host
ssh: connect to host nulla-3 port 22: No route to host
Попытка войти в систему несуществующего IP-адреса,
$ ssh root@192.168.1.11
ssh: connect to host 192.168.1.11 port 22: No route to host
Попытка войти в систему моего [локального] сервера в существующем IP-адресе,
$ ssh root@192.168.1.10
root@192.168.0.10's password:
No route to host
указывает, что IP-адрес является неправильным или что существует проблема с LAN, например, что маршрутизатор не работает или настроенный правильно.
Можно установить и использовать arp-scan
просканировать для связанного IP и MAC-адресов,
sudo apt update
sudo apt install arp-scan
sudo arp-scan -lv # minus ell vee
Проблема решена. Команда
ssh username@machine-2
всегда работавший. Я глупо пытался заставить это работать, когда машина 2 бездействовала - например, когда ноутбук был закрыт; или когда машина 2 спала.
Я нашел утилиту nmap
довольно полезный для этого; команда
nmap -sn 192.168.1.0-24
дает большую полезную информацию о локальной сети.
соединитесь для обращения к 192.168.1.5 портам 22: Никакой маршрут для хостинга
Кажется, что это - маршрутизатор/сетевая проблема.
Вместо ping я предлагаю использовать более усовершенствованную утилиту:
mtr 192.168.1.5
Я могу также предложить проверить Вас установки маршрутизатора и присвоить статический IP для обоих компьютеров.
P.S. Точные шаги, как сделать, которые зависят от модели маршрутизатора. Я могу предложить проверить этикетку на самом маршрутизаторе, обычно существует номер модели.
В первую очередь, необходимо проверить, находятся ли все компьютеры в той же сети.
ifconfig
, Вы будете видеть IP-адрес на каждом компьютере. Используя nmap
If it's not installed:
$ sudo apt install nmap
then
$ nmap -sP 192.168.0.0/24
$ nmap -sP 192.168.1.0/24
# This command depends on Your network configuration. Check it with `ifconfig`
Ниже пример в моей сети:
felixd@docker:~$ ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.15 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::a00:27ff:fe26:bbd1 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:26:bb:d1 txqueuelen 1000 (Ethernet)
RX packets 908 bytes 1173342 (1.1 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 678 bytes 50398 (50.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
В моем случае я использовал бы nmap
этот путь как мой IP-адрес 192.168.10.15
$ nmap -sP 192.168.10.15/24
Сетевая маска 255.255.255.0, таким образом, я использую/24 в команде nmap для проверки целой локальной сети.
Мой вывод:
felixd@docker:~$ nmap -sP 192.168.10.15/24
Starting Nmap 7.60 ( https://nmap.org ) at 2018-12-22 21:24 CET
Nmap scan report for 192.168.10.1
Host is up (0.0019s latency).
Nmap scan report for 192.168.10.2
Host is up (0.0021s latency).
.
. Lot of other devices ;)
.
Host is up (0.049s latency).
Nmap scan report for 192.168.10.82
Host is up (0.0014s latency).
Nmap done: 256 IP addresses (12 hosts up) scanned in 15.13 seconds
Теперь я знаю, что 192.168.10.82 мой сервер Ubuntu, в который я могу попытаться войти к этой машине:
$ ping 192.168.10.82 ;) to check if it's alive ;)
затем
$ ssh felixd@192.168.10.82
Удачи. С наилучшими пожеланиями, Paweł.