Il y a trois machines dans ce scénario:
Toutes les machines ont Ubuntu 11.04 (le bureau A est à 64 bits) et ont à la fois openssh-server et openssh-client.
Maintenant, lorsque j'essaie de connecter le bureau A à l'ordinateur portable A ou vice versa par ssh [email protected]
, le message d'erreur suivant s'affiche:
port 22: No route to Host
dans les deux cas.
Je possède les deux machines. Désormais, si j’essaie les mêmes commandes que les machines de mes amis, c’est-à-dire que via le Bureau B, je peux accéder à la fois à mon ordinateur portable et à mon bureau. Mais si j'essaie d'accéder à Desktop B depuis mon ordinateur portable ou par Desktop, je reçois
port 22: Connection timed out
J'ai même essayé de changer le port ssh no. dans le fichier ssh_config
mais sans succès.
Note: que "l'ordinateur portable A" utilise une connexion WiFi alors que la "machine A" utilise une connexion Ethernet et que la "machine B" se trouve sur un réseau entièrement différent.
@ Lekensteyn Le voici ->
Ordinateur portable A && Desktop A -> Routeur/Nano_Rcvr fourni par le FAI. Ainsi, sur un routeur, deux machines sont connectées et peuvent être accédées en même temps. voici ma sortie ifconfig pour les deux machines: - Laptop
wlan0
Link encap:Ethernet HWaddr X:X:X:X:00:bc
inet addr:1.23.73.111 Bcast:1.23.95.255 Mask:255.255.224.0
inet6 addr: fe80::219:e3ff:fe04:bc/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:108409 errors:0 dropped:0 overruns:0 frame:0
TX packets:82523 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:44974080 (44.9 MB) TX bytes:22973031 (22.9 MB)
Burea
eth0
Link encap:Ethernet HWaddr X:X:X:X:c5:78
inet addr:1.23.68.209 Bcast:1.23.95.255 Mask:255.255.224.0
inet6 addr: fe80::227:eff:fe04:c578/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10380 errors:0 dropped:0 overruns:0 frame:0
TX packets:4509 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1790366 (1.7 MB) TX bytes:852877 (852.8 KB)
Interrupt:43 Base address:0x2000
Sortie deip route show
1.23.64.0/19 dev wlan0 proto kernel scope link src 1.23.73.111 metric 2
169.254.0.0/16 dev wlan0 scope link metric 1000
Sortie detraceroute -n 1.23.73.111
traceroute to 1.23.73.111 (1.23.73.111), 30 Hops max, 60 byte packets
1 1.23.68.209 3008.787 ms !H 3008.786 ms !H 3008.784 ms !H
Les itinéraires ont l'air bien. Je suppose que ces adresses IP sont des adresses privées (LAN) et non accessibles au public.
Étant donné que vous êtes connecté de différentes manières au réseau (wifi/filaire), il est fort probable que votre routeur dispose de réseaux câblés/sans fil séparés. Essayez de connecter les deux sur une connexion filaire (ou sans fil). Une autre possibilité est qu'un pare-feu sur les machines Ubuntu bloque les connexions.
Sinon, configurez votre routeur pour utiliser le même réseau (sous-réseau) pour les connexions sans fil et câblées. Assurez-vous également que le routeur ne bloque pas la communication client à client.
Votre routeur est peut-être en train de supprimer tous les paquets non sollicités. C'est pourquoi votre ami reçoit un message "connexion expirée" sur votre adresse IP publique. Configurez le transfert de port NAT de sorte que la combinaison adresse IP publique + port soit transférée vers votre adresse LAN.
Exemple de réseau:
YOUR NETWORK (A)
Router A (public address: 198.51.100.1)
Desktop A - 10.0.0.2
Laptop A - 10.0.0.3
YOUR FRIENDS NETWORK (B)
Router B (public address: 203.0.113.1)
Machine B - 192.168.0.2
Sur routeur A, configurez le transfert NAT:
To make your desktop accessible:
forward the public port 22 to 10.0.0.2
To make your laptop accessible:
forward the public port 2222 to 10.0.0.3
Si vous avez un pare-feu (ufw
, iptables
, ...) sur le jeu de machines, autorisez le trafic entrant sur les ports 22 (bureau A) et 2222 (ordinateur portable A).
On peut maintenant accéder au bureau en utilisant SSH avec:
ssh [email protected] -p 22
L’ordinateur portable est maintenant accessible via SSH avec:
ssh [email protected] -p 2222
Si vous souhaitez accéder à la machine de vos amis, appliquez ces instructions à sa machine et à son routeur.
j'avais un problème similaire. Une machine sur fil une sans fil. J'ai trouvé une case à cocher dans mon routeur en plus de "séparer les ips pour le réseau local et le réseau local" et je l'ai coché. Maintenant, je peux me connecter à l'ordinateur wireles. Avant cela, j'ai reçu le message d'erreur "Aucune route vers l'hôte".
J'ai moi-même le même problème maintenant sur un vps, et c'est complètement bizarre, je n'ai jamais rien vu de tel.
Je suis un administrateur de serveur expérimenté et ce genre d'erreur est normalement coupé et séché.
Aucune route vers l'hôte signifie que le serveur ne sait pas comment router le paquet (table de routage, mais je ne l'ai jamais vue se produire uniquement sur un protocole et pas sur un autre).
Dans mon cas.
Pas de NAT connexion Internet. Aucun IPTABLES Ping fonctionne Je peux me connecter à l'un des côtés de l'ip cassé. L'IP cassé dit "pas de route à l'hôte" sur n'importe quel port TCP.
Cela suggère que quelque chose au milieu renvoie le code d'erreur ou un bogue dans le système d'exploitation avec la table de routage.
Notez que l'erreur est instantanée et non un délai, ce qui signifie que le rejet est local. Mais c'est tout ce que je peux diagnostiquer.
root@vps1 network # telnet 83.149.xx.xx 23
Trying 83.149.xx.xx...
telnet: Unable to connect to remote Host: No route to Host
root@vps1 network # telnet 83.149.xx.xx 80
Trying 83.149.xx.xx...
telnet: Unable to connect to remote Host: No route to Host
root@vps1 network # ping 83.149.xx.xx
PING 83.149.xx.xx (83.149.xx.xx) 56(84) bytes of data.
64 bytes from 83.149.xx.xx: icmp_seq=1 ttl=56 time=8.89 ms
64 bytes from 83.149.xx.xx: icmp_seq=2 ttl=56 time=7.93 ms
Cochez la case ssh lors de l'installation de RHEL. Je ne l'ai pas vérifié et provoquant le même problème. Veuillez vérifier ce paramètre