Centos7配置靜態IP后無法ping通外網或出現兩個IP的問題


場景:最近遇到一個問題,當通過SecureCRT或Xshell等工具連接虛擬機的時候,往往過了一兩天的時間之后就突然連不上了,於是直接通過虛擬機查看IP發現IP地址不是當初設置的IP了,原來我的網卡設置的是DHCP分配的IP地址,IP地址不固定。於是我通過新的IP地址重新連接,終於連上了,但是沒過幾天又連不上了。這種情況比較苦惱,畢竟我不能總是一直換IP吧。於是我把IP地址設置成靜態IP,但之后又遇到了新的坑。

注意:環境基於Centos7

問題一:設置靜態IP之后出現無法上網的情況

需要知道在設置靜態IP之前是否能夠上網,一般只要主機能夠上網並且沒有改過虛機的配置,基本上都能上網的。除非你用的不是原生鏡像,而是別人改過的你直接拷貝過來的,可能出現無法直接ping通外網的情況。但一般都是配置的問題。

1.設置靜態IP

vim /etc/sysconfig/network-scripts/ifcfg-ens33

 

 

把通過DHCP方式分配IP改為靜態IP,也就是

將BOOTPROTO=dhcp改為BOOTPROTO=static

ONBOOT=yes表明開機自啟動

設置為靜態IP之后就需要指定IP

IPADDR為IP地址

NETMASK為子網掩碼

GATEWAY為網關,注意,網關必須和虛機的網關地址一樣,否則無法上網,畢竟我們只有這一條路走,對吧,網關可以在虛擬網絡編輯器中找到

 

 

 

DNS就是DNS咯,隨便哪個DNS服務器都可以,你也可以自己搭建一個,開心就好。但是要保證必須有DNS服務,並且是正常工作的。一般出現無法ping通外網的情況都是DNS的問題,DNS相當於導航,如果導航出了問題那就只能迷路了。

注意:設置完網卡信息后需要重啟網卡服務

service network restart

查看IP信息

ifconfig或者hostname –I,可以看到,IP信息改了,並且已經可以通過工具連接了。

 

 

2.設置靜態IP之后無法上網

每次改完IP之后我都出現了這種情況。和網上的一比設置的都一樣,可以ping通網關和主機和同一網段的機器,但就是ping不通外網。

 

於是我直接ping百度的IP地址,可以ping通。。。

 

 什么問題?網絡是通的!

URL不同但是IP地址通,那不就是DNS出問題了嗎

但是我已經設置了DNS了

於是繼續pingDNS服務器

 

 通的。。。但還是ping不通外網

再加一個DNS試試

 

 

 

 發現竟然通了,是什么原因,把第一個DNS刪了試試

 

 

 

 把第一個DNS改成DNS1試試,結果還是通的。OK。

問題二:設置靜態IP后出現兩個IP地址

檢查BOOTPROTO是否設置成static,,如果還是默認的DHCP,主機會繼續為你分配IP地址,並且你設置的IP地址同樣生效,所以會出現兩個IP地址。如果改為static之后還有的話,在網卡配置信息后面加上NM_CONTROLLED=no

 

 

然后service network restart重啟網絡,就沒有了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM