Configure Openwrt internet on VirtualBox

Ken Chen
4 min readFeb 16, 2019

--

在 VirtualBox 中安裝 Openwrt 後,為方便開發與訪問 Openwrt 的 web server,需要設定 virtual machine 的網路配置。我們期望 Openwrt 對外可以連到外網,更新既有的 package;對內,可以連到內網,扮演 router 的角色。

因此我們需要兩張網卡,打開 VirtualBox 的 網路 > 介面卡1 勾選啟用網路卡,底下的 附加到 選擇 NAT 。接著打開網路 > 介面卡2 勾選啟用網路卡,底下的 附加到 選擇 「僅限主機」介面卡

VirtualBox 有多種的網路連接方式可以選擇,最常用到的 NATNetwork Address Translation ,我們可以把它當成是以 VirtualBox 為 Router 的區域網路,如果有其他的 virtual machine,由於不在同樣的 LAN 中,無法訪問設為 NAT 的 VM。這張網卡的目的是將 Openwrt 連到外面網路。

另一種「僅限主機」介面卡 則是在 Guest 跟 Host 間創造一個虛擬網路,Host 上會多出一張虛擬網卡,等同將 Guest 跟 Host 都接到相同的 switch,因此除了 Openwrt 外,其他 VM 也可以透過這個 switch 訪問 Openwrt 或 Host,但外界的機器則無法訪問。

為方面後續的開發,最好連 Serial Port 也設定。進入 串列埠 勾選 啟用串列埠 ,模式選擇 主機管線 ,然後不要勾 連線到現有管線/通訊端 ,路徑地址依照 Host 的 OS 來設定,如果是 windows,使用 \\.\pipe\$(NAME) ,例如 \\.\pipe\Openwrt 。後續就能用 putty 之類的軟體來開啟 Serial Port。

完成後進入 Openwrt,設定 Openwrt 內的 IP

cd /etc/config/
vi network

將原先的設定改為

config interface 'wan'
#option type 'bridge'
option ifname 'eth0'
option proto 'dhcp'
#option proto 'static'
#option ipaddr '192.168.1.1'
#option netmask '255.255.255.0'
#option ip6assign '60'
config interface 'lan'
option ifname 'eth1'
option proto 'dhcp'

有打 # 表示原來有的設定;# 是忽略的意思。這裡將 eth0 跟 eth1 兩張網卡都設為 dhcp。

ping 個 ip 試試看,確認能連到外網。

ping 8.8.8.8

用 Browser 開啟 eth1,確認能連到 Openwrt 的 Web server 頁面。

大功告成!

--

--

Ken Chen
Ken Chen

Written by Ken Chen

台北人。現職軟體開發者。主要領域為後端開發。喜歡電影藝術文學,偶爾寫點別的。想看更多的文章,可以到我的個人 Blog https://blog.kenwsc.com

No responses yet