• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      部署Linux虛擬機出現(xiàn)的網(wǎng)絡故障

      2020-04-20 11:25:58福州大學至誠學院李昂
      網(wǎng)絡安全和信息化 2020年3期
      關鍵詞:配置文件網(wǎng)卡命令

      ■福州大學至誠學院 李昂

      筆者在為某客戶單位部署一款信息平臺時,該信息平臺需要18臺服務器。因該單位已使用VMware vSphere進行了服務器虛擬化,為減少部署時間,降低部署工作量,筆者先部署了一臺操作系統(tǒng)為RedHat Enterprise Linux 7.1的虛擬機,然后將該虛擬機轉換成虛擬機模板,通過此虛擬機模板創(chuàng)建了信息平臺所需的18臺虛擬機。當使用這些虛擬機部署信息平臺時,發(fā)現(xiàn)它們的網(wǎng)卡都無法正常工作。

      故障現(xiàn)象

      1.無法配置網(wǎng)絡

      用“ifconfig eth0 172.16.5.178 netmask 255.255.255.0 broadcat 172.16.5.255”命令為虛擬機配置IP地址,顯示“eth0:unknown interface:No such device”等錯誤提示,如圖1所示。

      圖1 錯誤提示

      圖2 顯示名為“l(fā)o”的網(wǎng)卡

      2.不能啟動網(wǎng)卡

      用“ifup eth0”命令啟動網(wǎng)卡,顯示“Device eth0 does not seem to be present,delaying initialization”錯誤,表示不存在這樣的設備。

      3.只有l(wèi)o網(wǎng)卡

      用命令“ifconfig”查看當前有哪些網(wǎng)絡設備,結果虛擬機沒有“eth0”網(wǎng)卡,只有一塊名為“l(fā)o”的網(wǎng)卡,如圖2所示。“l(fā)o”是操作系統(tǒng)虛擬出來的一塊回環(huán)網(wǎng)卡,它不與任何實際設備連接,只是用來初始化設備以及初始化數(shù)據(jù)包格式。

      故障排查過程

      是不是安裝的虛擬機操作系統(tǒng)出了問題?于是筆者重新安裝了一臺虛擬機,用同樣的命令配置網(wǎng)卡,網(wǎng)卡能正常工作,沒有出現(xiàn)故障。由此可見,通過虛擬機模板部署的虛擬機是導致上述故障的主要原因。

      筆者用命令“cd/etc/sysconfig/networkscripts”,進入“networkscripts”文件夾,發(fā)現(xiàn)該文件夾中有“ifcfg-eth0”和“ifcfg-lo”兩塊網(wǎng)卡的配置文件,如圖3所示。

      用命令“vi ifcfg-eth0”打開eth0網(wǎng)絡配置文件,該配置文件中名為“HUADDR”一行記錄的是網(wǎng)卡的物理地址,如圖4所示。

      筆者懷疑這不是當前網(wǎng)卡的物理地址。通過查看虛擬機網(wǎng)卡設置,發(fā)現(xiàn)eth0網(wǎng)絡配置文件中網(wǎng)卡物理地址和實際網(wǎng)卡的物理地址不一致。很明顯,雖然筆者是通過模板部署的方式創(chuàng)建的虛擬機,其實和虛擬機克隆差不多,創(chuàng)建虛擬機時VMware都會為其產生一個與原始虛擬機網(wǎng)卡物理地址完全不同的網(wǎng)卡。

      前面用命令“ifconfig”無法配置網(wǎng)絡,無法啟動eth0網(wǎng)卡,用命令“ifconfig”查看網(wǎng)絡設備時,只有一塊“l(fā)o”網(wǎng)卡,這些故障出現(xiàn)的原因就是因為用虛擬機模板部署的虛擬機,用虛擬機模板部署虛擬機實際上和虛擬機克隆一樣,VMware都將為其重新配置了一塊新網(wǎng)卡。

      圖3 出現(xiàn)兩塊網(wǎng)卡的配置文件

      圖4 記錄的網(wǎng)卡物理地址

      實際上,對RedHat之類的Linux系統(tǒng)而言,會把運行時的網(wǎng)卡物理地址記入“/etc/udev/rules.d/70-persistent-net.rules”文件中,只要將該文件刪除,重新啟動虛擬機。在系統(tǒng)重新啟動過程中,會通過掃描硬件,把這塊新網(wǎng)卡當作是eth1,并且會把該網(wǎng)卡的物理地址記入“/etc/udev/rules.d/70-persistentnet.rules”文件中,如果沒有“/etc/udev/rules.d/70-persistent-net.rules”文件,操作系統(tǒng)會自動產生這個文件。172.16.5.178 netmask 255.255.255.0 broadcast 255.255.255.0”命令配置IP地址,此時的網(wǎng)卡應該是“eth1”而不是“eth0”,前面配置網(wǎng)卡出現(xiàn)錯誤就是因為網(wǎng)卡名稱發(fā)生了變化。

      使用命令“route add default gw 172.16.5.254”配置網(wǎng)關。

      配置好虛擬機網(wǎng)絡后,分別ping本地地址和外網(wǎng)地址,經測試,虛擬機網(wǎng)絡配置成功。

      解決方案(一)

      用命令“rm/etc/udev/rules.d/70-persistent-net.rules”刪除“70-persistent-net.rules”文件后,重啟虛擬機。

      在重啟虛擬機后,使用“ifconfig eth1

      注意:用ifconfig命令配置的網(wǎng)絡只在當前狀態(tài)有效,虛擬機重啟后,網(wǎng)絡配置也就不存在了。如果要將網(wǎng)絡配置信息永久保存起來,則需要修改網(wǎng)絡配置文件。目前該電腦只有網(wǎng)卡eth0的配置文件“ifcfg-eth0”,可以用命令“mv/etc/sysconfig/networkscripts/ifcfg-eth0/etc/sysconfig/network-scripts/ifcfg-eth1”將網(wǎng)卡eth0的配置文件更改為網(wǎng)卡eth1的配置文件“ifcfg-eth1”。

      解決方案(二)

      在上面的解決方案中,網(wǎng)卡名稱是“eth1”,不是默認的“eth0”。其他運維工程師在維護這些虛擬機時,可能會誤認為網(wǎng)卡名稱是“eth0”,給運維帶來不必要的麻煩。

      有沒有辦法將重新生成的網(wǎng)卡名稱改回eth0呢?答案是肯定的,下面是將網(wǎng)卡名稱改回“eth0”的具體過程。

      首先用命令“vi/etc/udev/rules.d/70-persistent-net.rules”編輯文件“70-persistentnet.rules”。

      打開“70-persistentnet.rules”文件后,可以看到這個文件里面有兩塊網(wǎng)卡,其中名為“eth0”的網(wǎng)卡是原虛擬機網(wǎng)卡,名為“eth1”的網(wǎng)卡才是當前網(wǎng)卡如圖5所示。

      刪除名為“eth0”的網(wǎng)卡信息,將名為“eth1”網(wǎng)卡名稱更改為“eth0”。

      用命令“vi/etc/sysconfig/networkscripts/ifcfg-eth0”編輯網(wǎng)絡配置文件“ifcfgeth0”。

      圖5 “eth1”的網(wǎng)卡才是當前網(wǎng)卡

      此時該配置文件的信息仍是原網(wǎng)卡的配置信息,網(wǎng)卡的物理地址仍是原網(wǎng)卡的物理地址。

      此時,就可以按“70-persistent-net.rules”文件中當前網(wǎng)卡的物理地址來修改網(wǎng)絡配置文件“ifcfgeth0”中的物理地址,其他信息則根據(jù)實際情況配置即可。

      修改好網(wǎng)絡配置文件“ifcfg-eth0”后,用命令“/etc/init.d/network restart”重啟網(wǎng)絡。

      重啟網(wǎng)絡后,用“ping”命令分別ping內網(wǎng)地址和外網(wǎng)地址,測試網(wǎng)絡配置是否有效。

      測試證明,當前網(wǎng)卡已經變成了默認的網(wǎng)卡“eth0”,所對應的網(wǎng)絡配置文件仍是“ifcfg-eth0”,并且工作正常。

      結語

      看上去這個問題很簡單,網(wǎng)上也有不少相關資料,可能是某些環(huán)節(jié)給漏掉了,筆者嘗試了一個多小時才解決這個問題,為了少走彎路,筆者梳理出上述解決方案,愿與大家一起分享。

      在上述解決方案中,有幾處需要特別說明:

      一是ifconfig命令是用于配置和顯示Linux內核中網(wǎng)絡接口的網(wǎng)絡參數(shù),ifconfig命令做出的網(wǎng)絡配置是臨時性,重啟電腦后無效,這對Linux操作不夠熟練的運維管理人員而言,是容易犯的錯誤。

      二是修改網(wǎng)絡配置文件“ifcfg-eth0”后,很多運維管理人員會重啟操作系統(tǒng),理所當然地認為重啟系統(tǒng)就會使設置生效。但事實上,有不少Linux操作系統(tǒng)在重啟后,并未按網(wǎng)絡配置文件內容啟動網(wǎng)絡。因此,使用命令“/etc/init.d/network restart”來重啟網(wǎng)絡是比較關鍵的一步操作,筆者也正是因為這個原因才走了不少彎路。

      猜你喜歡
      配置文件網(wǎng)卡命令
      在DDS 中間件上實現(xiàn)雙冗余網(wǎng)卡切換的方法
      提示用戶配置文件錯誤 這樣解決
      只聽主人的命令
      搭建簡單的Kubernetes集群
      互不干涉混用Chromium Edge
      Server 2016網(wǎng)卡組合模式
      忘記ESXi主機root密碼怎么辦
      移防命令下達后
      這是人民的命令
      挑戰(zhàn)Killer網(wǎng)卡Realtek網(wǎng)游專用Dragon網(wǎng)卡
      黄梅县| 图木舒克市| 泸州市| 海阳市| 鄂温| 襄城县| 左权县| 义乌市| 吉首市| 乌兰县| 东港市| 揭西县| 漾濞| 盘锦市| 甘孜县| 微博| 交城县| 信宜市| 雅安市| 措美县| 西城区| 博野县| 大连市| 中阳县| 亚东县| 疏勒县| 开远市| 师宗县| 廉江市| 乐平市| 休宁县| 玉龙| 海原县| 丹东市| 额济纳旗| 景东| 衢州市| 马关县| 登封市| 忻城县| 长治市|