讓安裝在 VirtualBox 虛擬機器裡的 Ubuntu 能夠連接到實體網路的方法


1. 在「Oracle VM VirtualBox 管理員」設定「網路」




「附加到(A)」選擇「橋接網路卡」。

「名稱(N)」選擇要讓 guest OS 透過 host 端的哪張網路卡連上網路.
2. 在 Ubuntu 檢查網路設定.
$ ifconfig

enp0s3: flags=4163  mtu 1500
        inet 192.168.0.110  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::e87b:dbcf:e26d:1935  prefixlen 64  scopeid 0x20
        ether 38:00:67:2f:29:15  txqueuelen 1000  (Ethernet)
        RX packets 158  bytes 207151 (207.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 178  bytes 23105 (23.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 163  bytes 12899 (12.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 163  bytes 12899 (12.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
3. 測試在 Windows 下透過網路和 Ubuntu 溝通
$ ipconfig

乙太網路卡 區域連線:

   連線特定 DNS 尾碼 . . . . . . . . :
   連結-本機 IPv6 位址 . . . . . . . : fe80::9d98:4e3c:3ebc:644c%15
   IPv4 位址 . . . . . . . . . . . . : 192.168.0.107
   子網路遮罩 . . . . . . . . . . . .: 255.255.255.0
   預設閘道 . . . . . . . . . . . . .: 192.168.0.1

$ ping 192.168.0.110

Ping 192.168.0.110 (使用 32 位元組的資料):
回覆自 192.168.0.110: 位元組=32 時間=1ms TTL=64
回覆自 192.168.0.110: 位元組=32 時間=1ms TTL=64
回覆自 192.168.0.110: 位元組=32 時間=1ms TTL=64
回覆自 192.168.0.110: 位元組=32 時間=1ms TTL=64

192.168.0.110 的 Ping 統計資料:
    封包: 已傳送 = 4,已收到 = 4, 已遺失 = 0 (0% 遺失),
大約的來回時間 (毫秒):
    最小值 = 1ms,最大值 = 1ms,平均 = 1ms
使用環境: Oracle VM VirtualBox 6.1 under Windows 10

參考文章


Virtualbox Bridged Networking Mode Allows VM to Connect to Your Router