Ubuntu

不能 ssh 到 beaglebone?

  • February 4, 2018

在我這樣做之後:

route add default gw 192.168.7.1

我也改變了/etc/resolv.conf

nameserver 192.168.7.1

為了在 VMware 中的 Ubuntu 之間共享網際網路。我已經可以上網,但重啟後,我永遠ssh無法從任何主機訪問 beaglebone。(Win7 或 Ubuntu)。SSH 不返回任何消息。

在 beaglebone 上,預設值為nameserver 127.0.0.1. 此外,該命令route返回:

Destination     Gateway     mask             Flags  Ref  Use  Iface
192.168.7.0     0.0.0.0     255.255.255.252  U      0    0    usb0

ifconfig返回:

usb0 net addr:192.168.7.2 Bcast:192.168.7.3

在主機上(win7):

ipv4 addr: 192.168.0.110, ipv4 default gw 192.168.0.1

在 Ubuntu 上ifconfig返回:

etho 192.168.179.129 Bcast:192.168.179.255

我還在啟動時禁用了 GNOME,也許它會關閉一些預設配置?resolv.conf每次系統啟動時,該文件都會重置。

Beaglebone 似乎有一個非常小的網路 192.168.7.0/30。(注:192.168.7.2 Bcast:192.168.7.3)這意味著它只會在“本地網路”上看到 .1 和 .2(.0 是網路地址,0.3 是廣播)。它也沒有預設路由,因此不會路由這兩個地址之外的任何內容。

我假設的 Win7 主機將位於 192.168.0.0/24 網路(網路遮罩為 255.255.255.0)和預設網關 192.168.0.1(儘管您在設置中沒有提到 192.168.0.1 地址?)。

Ubuntu 在它自己的 /24 段上,192.168.179.0/24(注意 192.168.179.255 的廣播)。

除非 192.168.0.1 可以看到 192.168.7.0/30(beaglebone’s)和 192.168.0.0/24 這兩個獨立網段的路由,否則您將無法從 Win7 到 beaglebone。Ubuntu 可能會出現類似的問題,具體取決於它所採用的路由/預設路由。

您沒有為 Win7 或 Ubuntu 提供路由,這將有助於更清楚地了解您的路由設置。netstat -rn(您可以通過在這些主機上執行 a 來提供這些詳細資訊)。

另外,什麼與什麼有物理聯繫?Ubuntu 是虛擬機,還是單獨的主機?它們是否都插入 beaglebone,或者所有三個都連接到其他設備(192.168.0.1 的主機?)

至於您的 resolv.conf 更改,這很可能是因為您的 IP 地址可能是通過 DHCP 獲得的(這會將 resolv.conf 替換為它從 DHCP 伺服器的 DHCP ACK 響應中獲得的內容)。您可以編輯 dhclient.conf 並添加prepend domain-name-servers 127.0.0.1;語句或添加interface不包含語句的domain-name-servers聲明。

引用自:https://unix.stackexchange.com/questions/84985