一、設置靜態IP地址
1、執行終端命令
vim /etc/sysconfig/network-scripts/ifcfg-ens33
2、修改紅色部分,沒有的就添加
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" 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="2cbd61e6-61e4-4535-a5db-fbdf82a8dca2" DEVICE="ens33" ONBOOT="yes" IPADDR=192.168.237.132 NETMASK=255.255.255.0 GATEWAY=192.168.237.2 DNS1=8.8.8.8
一張圖說明一下上面配置的部分信息
3、重啟網絡服務命令
systemctl restart network.service
4、重啟網絡服務之后嘗試ping一下內網和外網
ping www.baidu.com
能ping通百度的話說明網絡沒有問題,靜態ip設置成功。
如果網絡有問題就做接下來的操作(親測有效)
二、使用靜態IP地址不能上網問題
1、 查看受網絡管理器托管的設備
nmcli dev status
發現 ens33 也就是我們編輯的網卡是受托管的.
2、在ifcfg-ens33文件最后添加NM_CONTROLLED = no;取消托管
vim /etc/sysconfig/network-scripts/ifcfg-ens33
在最后添加NM_CONTROLLED = no
3、設置VM虛擬網絡
點擊編輯,然后點擊虛擬網絡編輯器
選擇VMnet8,把DHCP的√去掉
然后點擊上圖中的NAT設置
網關ip設置為ifcfg-ens33 文件設置的網關即可,然后點擊確定
4、設置路由
至此,CentOS7可以Ping通網關,但Ping不過外面的主機.也就相當於二層路由器.這是因為CentOS7沒有默認路由的原因
(1)檢查路由
route -n
(2)添加DNS(為空就添加)
vim /etc/resolv.conf
(3)添加永久靜態路由
vi /etc/sysconfig/network-scripts/route-ens33
內容按格式填就行
比如我之前填的網關為192.168.237.2
那么內容如下(紅色部分不用修改,根據你的網關改其余部分)
192.168.237.0/24 via 192.168.237.2 0.0.0.0/0 via 192.168.237.2
懂網絡的人都知道:虛擬機網關192.168.237.2是電腦虛擬出來的,能ping通網關(192.168.237.2)就相當於能與真實電腦通訊,理論上真實電腦能上網,虛擬機就能上網。
那為什么虛擬機不能上網呢?應為虛擬機只是電腦,他接收到網絡數據包不知道該發給誰,這時咱門添加路由,指定發給網關(192.168.237.2),也就是發給外面的真實電腦,真實電腦會通過自己的外網解析,把外網數據返回來。很簡單吧
5、進行測試
測試成功
主要參考https://blog.csdn.net/woailyoo0000/article/details/79506999