不能 ssh 到 beaglebone?
在我這樣做之後:
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
聲明。