有段時間沒有用虛擬機了,這幾天翻出了以前的虛擬機,寫幾個demo,但遇到了一個讓人難受的問題。使用xshell遠程連接虛擬機,命令還沒敲幾個,不到一分鍾就自動斷開了,只能重新再次連接。啥事都干不成,有點小奔潰。作為技術人,會被這事難倒?排查原因是ip占用,所以就摸索一般,配置固定ip來解決該問題。
完成效果
按固定ip配置后,可以解決以下問題:
- 配置固定ip后,切換網絡或者斷網,物理機ip變更后,虛擬機ip也不會變更
- 虛擬機ip自定義,比如一個好記的ip地址
配置方式:虛擬機NAT模式+固定ip
我們實際來看下配置過程,跟上節奏,一起來配置吧。
虛擬機設置
設置虛擬機的網絡連接方式,如下所示:
配置為NAT模式后,我們再來配置虛擬機的網絡配置,操作如下:
-
編輯>虛擬網絡編輯器
-
更改設置
-
選擇VMnet8 > 取消勾選使用本地DHCP > 設置子網IP
設置子網IP,就是自定義自己想要的IP段,比如:192.168.88.0
- NAT設置,配置網關IP
配置網關IP,要與子網IP在同一個段內,比如:192.168.88.188
網絡適配器設置
虛擬機中的操作,按如上步驟配置好后,我們來配置網絡適配器的參數,如下所示:
- 注意:該頁面的IP地址,不能跟虛擬機固定IP配置相同!!!只要保持在同一網段即可
虛擬機網絡配置文件修改
完成上述步驟后,就該配置虛擬機的網絡文件了。
配置網絡參數
我們進入到目錄cd /etc/sysconfig/network-scripts/
,查看文件如下所示:
這里的網絡文件名,你的不一定跟我一樣,不必糾結。
使用vim編輯器配置參數,命令 vim ifcfg-ens33
,詳細參數如下所示:
TYPE=Ethernet
NAME=ens33
UUID=0578db66-7e70-42bf-a1d4-6b04e2ba7059
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=static
HWADDR=00:0c:29:f2:a1:54 #MAC地址
NM_CONTROLLED=yes
IPADDR=192.168.88.88 #設置的固定IP
NETMASK=255.255.255.0 #子網掩碼
GETEWAY=192.168.88.188 #網關,這是在虛擬機網絡編輯時,配置的IP
DNS1=114.114.114.114 #DNS地址
重啟網絡服務
保存數據后,重啟網絡,使用命令service network restart
,顯示OK,說明重啟成功。
網絡調試
查看IP地址
先使用命令ifconfig
或者ip addr
查看ip是不是我們設置后的地址,確保配置生效。
調試
使用ping
命令,看與外網或者物理機是否可以正常通訊
確保可以連通情況下,也可以再用物理機檢測下,確保可以遠程連接
遠程連接
完成上述所有步驟后,說明配置ok了,網絡也正常,我們再來試下遠程連接。
關閉防火牆
使用命令systemctl stop firewalld
關閉,關閉后,可以查看下防火牆狀態,使用命令systemctl status firewalld
,關閉后是disavtive(dead)
終端連接
嘗試一次就成功了,如下所示,想想都開心。
問題總結
在配置固定IP時,也遇到了2個小問題,稍微總結下,爬坑記。
network is unreachable
重啟網絡服務,報錯network is unreachable
解決辦法:使用命令ip addr
查看網絡信息,將mac地址更新到網絡配置文件中,再次重啟即可。
mac地址查看如下所示:
網絡配置文件,配置如下:
ping unknown host
使用ping
命令時,提示unknown host
,排查結果是,沒有默認路由。
解決辦法:
- ip route
使用命令ip route
查看路由表信息,如下所示:
- route -n
查看路由詳情,如下所示,是已經有了192.168.88.188
的網關,是因為我已經加了,如果你也報同樣的錯,應該是沒有這一條的。
- 添加默認路由
使用命令route add default gw 192.168.88.188
,回車即可。再次使用route -n
命令查看路由信息,就有了如上所示圖中的信息了。
- 測試
使用命令tracepath www.baidu.com
或ping www.baidu.com
,就能夠看到正常的響應信息了