概述
本文主要介紹在Alibaba Cloud Linux 2系統的執行個體中,網路服務使用傳統的network-scripts與使用systemd-networkd產生的影響說明,以及進行相關配置變更的方法。
詳細資料
阿里雲提醒您:
如果您對執行個體或資料有修改、變更等風險操作,務必注意執行個體的容災、容錯能力,確保資料安全。
如果您對執行個體(包括但不限於ECS、RDS)等進行配置與資料修改,建議提前建立快照或開啟RDS記錄備份等功能。
如果您在阿里雲平台授權或者提交過登入帳號、密碼等安全資訊,建議您及時修改。
Alibaba Cloud Linux 2執行個體使用的網路服務
Alibaba Cloud Linux 2執行個體從下列鏡像開始,預設網路服務從systemd-networkd切換為network-scripts,以符合大多數使用者的網路設定習慣,實現更好的相容性。由於存量執行個體無法執行自動切換操作,目前存量Alibaba Cloud Linux 2執行個體仍然保持systemd-networkd的網路設定模式,若您希望將存量執行個體的網路類型切換為network-scripts,請參見進行從systemd-networkd切換至network-scripts的方法操作。
基礎鏡像:aliyun_2_1903_x64_20G_alibase_20210208.vhd
AMD版鏡像:aliyun_2_1903_x64_20G_uefi_alibase_20210218.vhd
本地鏡像:aliyun_2_1903_x64_20G_nocloud_alibase_20210218.vhd
可信版鏡像:aliyun_2_1903_x64_20G_secured_alibase_20210218.vhd
快速啟動版鏡像:aliyun_2_1903_x64_20G_qboot_alibase_20210218.vhd
等保2.0三級版鏡像:aliyun_2_1903_x64_20G_dengbao_alibase_20210218.vhd
從systemd-networkd切換至network-scripts的方法
切換網路服務所產生的影響說明
對原有執行個體的影響
如果同時購買了新執行個體,則新執行個體和之前執行個體的網路設定模式將會不一致。因此建議您將存量執行個體的網路類型從systemd-networkd切換為network-scripts。
開機啟動速度的變化
傳統的network-scripts網路服務,使用Shell指令碼直接進行網路設定,執行效率較低。執行個體的網卡在無特殊配置的前提下,在整個系統啟動過程中,即從執行個體建立到通過SSH遠端連線過程中,相比使用systemd-networkd網路服務的執行個體多出2~4秒的啟動時間。
如果接受不了執行個體的啟動速度變慢,且使用者可以接受不相容network-scripts的網路設定方式,請參見從network-scripts切換至systemd-networkd的方法,切換網路服務為systemd-networkd,若遇到systemd-networkd相關的問題,請參見systemd-networkd常見問題及處理進行修複。
網路設定檔路徑的更改
沒有切換網路服務之前,原路徑為
/etc/systemd/network
,現在需要切換回傳統的/etc/sysconfig/network-scripts/
路徑。若您想瞭解兩個設定檔常見的配置項差異,具體資訊請參見network-scripts與systemd-networkd配置項的差異。網路服務重啟命令的變化
使用systemd-networkd網路服務,使用以下命令重啟網路服務。
sudo systemctl restart systemd-networkd
切換至network-scripts網路服務後,使用以下命令重啟網路服務。
sudo systemctl restart network
將存量執行個體的網路服務切換為network-scripts
執行下列操作之前,請確保已知悉切換網路服務所產生的影響,方可執行下列操作。
注意:本次操作涉及網路設定,操作不當可能會導致網路不通。為了避免誤操作引發資料安全和網路風險,請為Linux執行個體的系統硬碟建立快照。關於如何建立快照,請參見建立快照。
根據您是否沿用舊的
resolv.conf
設定檔,參考以下內容完成配置:如果沿用舊的
resolv.conf
設定檔,請參考以下步驟:執行以下命令,對
resolv.conf
軟連結檔案進行備份。mv /etc/resolv.conf /etc/resolv.conf.bak
執行以下命令,將備份檔案的內容寫入新的
resolv.conf
設定檔中。cat /etc/resolv.conf.bak > /etc/resolv.conf
執行以下命令,鎖定
resolv.conf
設定檔,對resolv.conf
設定檔進行保護。chattr +i /etc/resolv.conf
如果不需要沿用舊的
resolv.conf
設定檔,請執行以下命令,刪除舊的resolv.conf
設定檔。rm /etc/resolv.conf
說明說明:
啟動network.service服務後,系統會自動產生新的resolv.conf檔案。
關於systemd-resolved服務的更多資訊, 請參見systemd-resolved網域名稱解析服務。
依次執行以下命令,切換網路管理服務。
systemctl enable network systemctl disable systemd-networkd systemctl disable systemd-resolved
執行以下命令,重啟機器。
reboot
執行以下命令,確認啟動network-scripts網路服務成功。
systemctl status network
從network-scripts切換至systemd-networkd的方法
如果您比較在意系統的啟動速度,並已知悉sytemd-networkd存在的已知問題及風險,您可參見下列步驟,將網路服務從network-scripts切換至systemd-networkd。
注意:本次操作涉及網路設定,操作不當可能會導致網路不通。為了避免誤操作引發資料安全和網路風險,請為Linux執行個體的系統硬碟建立快照。關於如何建立快照,請參見建立快照。
根據您是否沿用舊的
resolv.conf
設定檔,參考以下內容完成配置:如果沿用舊的
resolv.conf
設定檔,請參考以下步驟:執行以下命令,對
resolv.conf
軟連結檔案進行備份。cp /etc/resolv.conf /etc/resolv.conf.bak
執行以下命令,鎖定
resolv.conf
設定檔,對resolv.conf
設定檔進行保護。chattr +i /etc/resolv.conf
如果不需要沿用舊的
resolv.conf
設定檔,請參考以下步驟:請執行以下命令,刪除舊的
resolv.conf
設定檔。rm /etc/resolv.conf
執行以下命令,產生
resolv.conf
設定檔的軟連結。ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
執行以下命令,確認網路介面設定檔存在且有效。
cat /etc/systemd/network/10-eth0.network
系統顯示類似如下。
[Match] Name=eth0 [Network] DHCP=yes [DHCP] UseDNS=yes
依次執行以下命令,切換網路管理服務。
systemctl disable network.service systemctl enable systemd-networkd systemctl enable systemd-resolved
執行以下命令,重啟機器。
reboot
執行以下命令,確認啟動systemd-networkd網路服務成功。
systemctl status systemd-networkd
systemd-networkd常見問題及處理
以下內容為使用systemd-networkd網路服務常見的問題及處理方法,請根據現場情況,選擇下列對應的步驟。
多網卡預設路由配置
問題描述 | 解決方案 |
如果在
| 請參見配置彈性網卡中的為Alibaba Cloud Linux 2系統配置彈性網卡章節,按需求為每個網卡單獨配置,避免使用通配方式為特定網卡自動設定上預設路由。 |
systemd-resolved佔用5355連接埠
問題描述 | 解決方案 |
預設配置下,systemd-resolved服務會開啟DNS服務監聽,佔用UDP的5355連接埠。
|
若需要關閉5355連接埠,請將
說明 說明:
|
DNS網域名稱解析間歇逾時的問題
問題描述 | 問題原因 | 解決方案 |
|
|
|
IP轉寄配置失效
問題描述 | 問題原因 | 解決方案 |
在系統內sysconfig的網路轉寄預設配置為
|
systemd-networkd的配置缺少
|
您可以通過以下步驟新增一條IP轉寄配置,開啟IP轉寄功能:
|
network-scripts與systemd-networkd配置項的差異
配置項
|
network-scripts
|
systemd-networkd
|
備忘
|
IP
|
設定檔為:
|
設定檔為:
|
|
網關
|
設定檔為:
|
設定檔為:
| N/A |
DNS
|
設定檔為:
|
設定檔為: 說明 說明:此檔案為指向
|
修改DNS的方法,請參見如何在Alibaba Cloud Linux 2執行個體中通過“/etc/resolv.conf”檔案自訂配置DNS。
|
適用於
Elastic Compute Service