解決VMware虛擬機中CentOS 7 報錯ping: www.xxx.com: Name or service not known

1. 前言

本來這篇文章不準備寫出來了,因爲網上關於這個報錯的文章非常多。但是今天自己遇到了一種網上沒有找到的情況,因而寫出來,給大家作爲參考,同時也對網上的一些資源進行了 整理,希望能幫助到你,尤其是像我一樣的小白。如果有遇到其他情況,也歡迎在下方留言補充、完善。

2. 問題描述

問題:CentOS 7中無法聯網,如下所示:
在這裏插入圖片描述
其他可能由於網絡原因造成的報錯:用yum時,報錯cannot find a valid baseurl for repobase7x86_64;以及用git clone時,報錯Could not resolve host: github.com; Unknown error等。

3. 問題排查與解決

3.1 檢查網絡連接設置

使用命令sudo nmcli d,如果網絡未連接,結果如下:
在這裏插入圖片描述
進一步確認
ls /etc/sysconfig/network-scripts/ifcfg-e*查看文件,因爲每個人的網卡文件名可能有不同,我的這裏是cat /etc/sysconfig/network-scripts/ifcfg-ens33,然後使用命令cat /etc/sysconfig/network-scripts/ifcfg-ens33,結果如下:

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=5db68001-983a-4391-8c8c-ad61b31799ba
DEVICE=ens33
ONBOOT=no  # 設置不啓動網卡

果然這裏設置默認不啓動連接網絡。
解決辦法:輸入vi /etc/sysconfig/network-scripts/ifcfg-ens33,把裏面的ONBOOT=no修改爲ONBOOT=yes,保存退出。也可以在圖形界面找到/etc/sysconfig/network-scripts/ifcfg-ens33進行點擊修改,然後保存。
再輸入service network restart重啓網卡即可。
再ping,發現成功,解決問題。如果問題還在,繼續往後看。

3.2 檢查網關問題

使用cat /etc/resolv.conf命令查看網關配置,如果顯示如下:

[root@localhost ~]# cat /etc/resolv.conf 
# Generated by NetworkManager

說明此時沒有配置網關。
解決辦法:修改/etc/resolv.conf文件,命令爲vi /etc/resolv.conf,修改爲如下內容:

# Generated by NetworkManager
search localdomain
nameserver 192.168.211.2 # 虛擬機默認分配的
nameserver 114.114.114.114 # 電信的DNS
nameserver 8.8.8.8 # googel的DNS

通常虛擬機中cat /etc/resolv.conf默認是:

search localdomain
nameserver 192.168.xxx.xxx  # 這裏取決於你的網絡,每個人會有所區別

也可以添加一下DNS

nameserver 114.114.114.114  # 電信的DNS
nameserver 8.8.8.8  # googel的DNS

:wq保存退出後,再ping,問題解決。如果沒有解決,繼續往後看我今天遇到的情況。

3.3 VMware虛擬機網絡配置有問題

關閉所有的虛擬機系統,點擊編輯–>虛擬網絡編輯,接下來如下所示。
在這裏插入圖片描述

3.4 VMware虛擬機恢復快照

這一步的前提是有進行快照。
虛擬機的一個好處是可以通過快照快速恢復原狀。所以在進行一些 不確定操作前,可以進行快照,萬一中途出現問題一時無法解決,也可以通過快照恢復,重新操作嘗試。
最壞的打算就是重新安裝虛擬機。
完成後,再次進入虛擬機,ping www.baidu.com,成功,如果還沒有,再把1和2檢查一遍。
還是沒有解決,暫時我也沒有遇到其他情況,歡迎大家留言討論。

4. 參考文章

站在巨人的肩膀上,總能幫助我們更好的前行。這裏特別感謝以下幾個博主的教程。如果大家有什麼疑問,歡迎大家在博客下面留言交流,一起進步!

  1. CentOS7用yum安裝軟件提示 cannot find a valid baseurl for repobase7x86_64
  2. tar (child): lbzip2: Cannot exec: No such file or directory 解決方法
  3. LInux因爲缺失網關出現Name or service not known的解決方法
  4. Linux中ping不通外網
  5. ping: http://google.com: Name or service not known
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章