網路設定
在獨立模式下,請同時設定序列埠存取和網路存取。序列埠存取可確保在網路連線不可用或設定不正確時,仍可存取 DevKit。
預設情況下,DevKit 網路介面使用 DHCP。
- 如果您想將 DevKit 直接連接到您的電腦,請將您的電腦網路介面配置為使用靜態 IP 位址,然後將其直接連接到 DevKit。
- 如果您希望 DevKit 從網路自動獲取其 IP 位址,請配置介面以使用 DHCP。
檢查目前的 IP 位址
從序列控制台執行:
sima@modalix:~$ ip a | grep inet
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host noprefixroute
inet 192.168.91.181/22 brd 192.168.91.255 scope global dynamic noprefixroute end0
inet6 fe80::ab34:b995:9f6e:160e/64 scope link noprefixroute
- Linux Shell 中的網路設定
- 共用主機網路連線
- U-Boot Shell 中的網路設定
如果您想在不重新啟動設備的情況下切換靜態 IP 和 DHCP,請遵循以下說明。
如果 sima-cli 已安裝在 DevKit 上,請執行此命令以在不重新啟動的情況下切換 DHCP 和靜態配置:
modalix:~$ sima-cli network
這個指令會開啟一個互動式選單,用於設定靜態和 DHCP 網路配置。
如果 sima-cli 無法使用,請使用 nmcli 在預先設定的連線設定檔之間切換:end0-static 和 end0-dhcp。
以下說明使用 NetworkManager 設定檔,適用於執行 eLxr 2.1 或更高版本的 DevKit 系統。如果您的系統執行的是較早版本,請參閱 v2.0.0 文件 。
切換至靜態 IP
若要將網路介面從 DHCP 變更為靜態,請執行:
modalix:~$ sudo nmcli connection up end0-static
modalix:~$ nmcli -f NAME,DEVICE,STATE connection show --active
modalix:~$ networkctl status
切換至 DHCP
若要將網路介面從靜態設定變更為 DHCP,請執行:
modalix:~$ sudo nmcli connection up end0-dhcp
modalix:~$ nmcli -f NAME,DEVICE,STATE connection show --active
modalix:~$ networkctl status
修改靜態 IP 位址
若要變更 end0-static 設定檔所使用的 IP 位址,請更新該設定檔並重新啟用:
modalix:~$ sudo nmcli connection modify end0-static ipv4.addresses 192.168.1.20/24
modalix:~$ sudo nmcli connection up end0-static
將「192.168.1.20/24」替換為您想要的地址和前綴。NetworkManager 會將設定檔儲存在「/etc/NetworkManager/system-connections/」中;2.0 版本及更早版本中的舊版「/etc/systemd/network/20-end0-static.network」檔案不再存在。
- 當開發套件無法直接連接到開發人員網路時,請使用此選項。
- 將開發套件連接到主機的乙太網路埠。如果主機沒有乙太網路埠,請使用 USB 轉乙太網路轉接器。
- 主機能與開發套件共享網際網路連線,包括使用
pip安裝 Python 套件。 - 此選項需要在主機電腦上啟用網際網路連線共享。
-
在 Ubuntu 主機上,啟用網際網路連線分享:
- 在右上角,開啟
Settings,然後前往Network區段。 - 在
Wired下方,如果沒有為該板子建立設定檔,請點擊加號以建立新的設定檔;如果有的話,請修改現有的設定檔。 - 如果您正在建立新的設定檔,請將其命名為「Shared」(共享)或您喜歡的任何名稱。
- 在
IPv4標籤中,選擇Shared to other computers。點擊「套用」。 - 如果您有現有的連線,請關閉並重新開啟,以使變更生效。
- 主機現在應該已與 DevKit 建立網路連線。
10.42.0.0/24是 Ubuntu 在此設定中使用的預設子網路,但您的主機可能使用不同的子網路。 - 如果下一步驟沒有返回任何結果,請執行
ifconfig,並尋找您的乙太網路介面的 IP 位址。
- 在右上角,開啟
-
在 Ubuntu 主機上開啟終端機,並掃描該 IP 範圍內的裝置:
sima-user@sima-user-machine:~$ nmap -sn 10.42.0.0/24 | grep reportNmap scan report for sima-user-machine (10.42.0.1)Nmap scan report for 10.42.0.241
結果會列出此子網路中的 IP 位址。結尾為 .1 的位址通常是主機。另一個位址是 DevKit。在此範例中,DevKit 是 10.42.0.241,而主機是 10.42.0.1。
-
執行以下指令來測試連線:
sima-user@sima-user-machine:~$ ssh sima@10.42.0.241...Last login: Mon Nov 27 19:58:33 2023modalix:~$ -
從 DevKit 測試連線至主機
10.42.0.1。如果主機上正在執行 SSH 伺服器,您也可以使用 SSH 連線。modalix:~$ ping 10.42.0.1 -
如果您無法透過 ping 或 SSH 連接到 DevKit,請使用靜態 IP 設定方法。
此程序僅適用於 DevKit 韌體 2.0 或更早版本。對於 2.1 或更高版本,請使用 Linux 端的配置。在 U-Boot 中配置網路可讓網路設定在韌體升級期間保留。
-
透過 UART 連接到 DevKit,並使用 序列終端機 。
-
重新啟動 DevKit。
-
當出現訊息
Hit any key to stop autoboot時,按下任意鍵以進入 U-Boot。 -
若要切換至靜態 IP,請輸入以下指令:
sima:~$ env set forcenetcfg static; saveenvsima:~$ boot -
板卡重新啟動,並在第一個和第二個乙太網路埠上使用
192.168.1.20和192.168.2.20。 -
若要修改板卡的靜態 IP 位址,請在裝置啟動後使用
vi編輯網路檔案。modalix:~$ sudo vi /etc/systemd/network/20-end0-static.network注意此檔案僅存在於韌體版本 2.0 或更早的版本中。在版本 2.1 及之後的版本中,它已被「NetworkManager 設定檔」取代——請按照「Linux Shell 中的網路設定」標籤中描述的方式,使用
nmcli修改靜態 IP 位址。 -
在「網路」區段中,根據需要更新 IP 位址。
-
若要設定 DHCP 模式,請輸入以下指令並重新啟動板子。
sima:~$ env set forcenetcfg dhcp; saveenvsima:~$ boot