Networking

為什麼安裝 ddclient 會破壞 GCE 和 Azure Ubuntu VM 上的網路?

  • January 17, 2018

我注意到在安裝和配置 ddclient 並重新啟動這些機器後,我在 Google Compute Engine (GCE) 和 Azure 上的 Ubuntu 實例網路中斷。此問題不會在 AWS 上發生。

發生這種情況時,一切看起來都很好,介面出現,分配了一個 IP,但它說預設網關無法訪問。解除安裝 ddclient 並刪除其配置文件,然後重新啟動,即可解決此問題。

為什麼 ddclient 似乎會破壞這些 GCE 和 Azure 實例上的網路?

這是我的 ddclient 配置的範例:

ssl=yes
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
protocol=namecheap
server=dynamicdns.park-your-domain.com
login=<mydomain>
password=<mypassword>
@

我也遇到了這個問題。

Dwight Lyle 在 5 月份送出了一份錯誤報告。 https://bugs.launchpad.net/ubuntu/+source/ddclient/+bug/1688052

我修復啟動盤的步驟受到了 Dwight 描述的啟發。TL;DR 我安裝了無法啟動到另一個實例的磁碟,chroot’d 進入它,apt-get purged ddclient,並使用(現在)正常工作的磁碟創建了一個新實例。

並詳細說明:

在 GCE 控制台中點擊損壞的實例以查看有關它的詳細資訊。點擊編輯並取消選擇“刪除實例時刪除啟動磁碟”。

現在,刪除無法啟動的實例(在仔細檢查您也不會刪除磁碟之後!)。

在 Google Coud Shell 中:


gcloud compute instances attach-disk WORKING_INSTANCE --disk DISK_OF_BROKEN_INSTANCE --device-name new_disk

在一個工作的 GCE 實例中:


lsblk       # to know which disk to mount
sudo mount /dev/sdb1 /mnt/      # sdb1 was the disk not mounted as root (the broken disk)
sudo chroot /mnt/
sudo apt-get purge ddclient
exit
sudo umount /mnt

在 Google Coud Shell 中:


gcloud compute instances detach-disk WORKING_INSTANCE --disk DISK_OF_BROKEN_INSTANCE

回到 GCE 控制台,轉到磁碟選項卡,找到剛剛修改的磁碟,並用它創建一個新實例。運氣好的話,您應該能夠啟動它並通過 SSH 進入它!

引用自:https://serverfault.com/questions/881523