1. 程式人生 > >實現虛擬機器上網及域名新增

實現虛擬機器上網及域名新增

一.虛擬機器上網
1.首先將真機變為路由器

    systemctl stop libvirtd               關閉虛擬機器的libvirtd服務(因為防火牆與虛擬機器服務有衝突)
    systemctl restart firewalld           啟動火牆(火牆開啟才會有地址偽裝功能)
    systemctl start libvirtd              重啟虛擬機器libvirtd
    firewall-cmd --permanent --add-masquerade(地址偽裝)       開啟真機的路由器功能
    firewall-cmd --reload                  更新防火牆規則
    firewall-cmd --list-all                顯示真機的路由器列表,檢視是否配置成功

注意:以上操作需進入“root”模式

systemctl stop libvirtd               關閉虛擬機器的libvirtd服務(因為防火牆與虛擬機器服務有衝突)
systemctl restart firewalld           啟動火牆(火牆開啟才會有地址偽裝功能)
systemctl start libvirtd              重啟虛擬機器libvirtd

在這裡插入圖片描述

firewall-cmd --permanent --add-masquerade(地址偽裝)       開啟真機的路由器功能

在這裡插入圖片描述

   firewall-cmd --reload                  更新防火牆規則

在這裡插入圖片描述

  firewall-cmd --list-all               檢視是否配置成功

在這裡插入圖片描述
提示:當我們看到上述內容時,

masquerade:yes

yes表示的我們將真機的路由器功能配置成功,但是如果是no的話,就是沒有配置成功
2.檢視當前主機ip
方法一:

ifconfig    檢視所有的網絡卡裝置資訊

在這裡插入圖片描述
方法二:

ip addr show br0          直接檢視 br0檔案

在這裡插入圖片描述

當前真機ip為:172.25.254.67

3.設定虛擬機器

vim /etc/sysconfig/network            全域性閘道器,針對所有沒有設定閘道器的網絡卡生效
GATEWAY=172.25.254.67
vim /etc/sysconfig/network-scripts/ifcfg-eth0
GATEWAY0=172.25.254.67        當網絡卡中設定的ip有多個時,指定對於那個ip生效
GATEWAY=172.25.254.67         當網絡卡中設定的ip只有一個時
route  -n                     檢視閘道器是否生效

使用ifconfig檢視虛擬機器網絡卡資訊 如果發現有多張張網絡卡 則不可以使用全域性閘道器設定
在這裡插入圖片描述
在這裡插入圖片描述
4.設定完成後,在真機中ping百度 ,獲得百度的ip.之後在虛擬機器中ping百度的ip
在這裡插入圖片描述
由此可得百度的ip是180.97.33.108
在這裡插入圖片描述
在這裡插入圖片描述
注意:

如果ping 不通百度 .但步驟正確.可在真機中刪除虛擬機器所有網絡卡,且重新分配網絡卡,並重復虛擬機器中網絡卡配置步驟.

刪除與重建網絡卡步驟:
1.真機中執行virt-manager
在這裡插入圖片描述
2.點選Desktop選擇Open在點選左上方小燈泡,選擇網絡卡,點選Rmove,選擇Yes
在這裡插入圖片描述
3.刪除後點擊左下方Add Hardware然後選擇Network在Device model中選擇virtio,選擇右下角Cancel
在這裡插入圖片描述
二.域名的新增(DNS)
1.DNS是什麼:
域名系統(Domain Name System, DNS)是網際網路的核心應用層協議之一, 它用於查詢域名對應的IP地址.在使用域名訪問任何網路資源時都需要先進行域名解析.
2.手動新增
查詢百度域名 :220.181.112.244

vim /etc/hosts

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述手動新增百度域名可以直接ping通網址
在這裡插入圖片描述
3.自動解析
為了避免繁瑣.手動解析過於麻煩,所以可以使用自動解析

vim /etc/resolv.conf

先查詢真機的伺服器的IP地址.
在這裡插入圖片描述
在這裡插入圖片描述
在虛擬機器中開啟

vim /etc/resolv.conf

將nameserver修改為:192.168.43.1
在這裡插入圖片描述
在這裡插入圖片描述
新增完成後就不需要新增域名都可以ping通了比如

ping www.taobo.com

在這裡插入圖片描述

ping www.tianmao.com

在這裡插入圖片描述

ping www.4399.com

在這裡插入圖片描述
注意:
當網路工作模式為dhcp時
系統會自動獲得ip 閘道器 dns
那麼/etc/resolv.conf會被獲得到的資訊修改
如果不需要獲得dns資訊
PREEDNS=no
4.設定解析的優先順序
系統預設:

/etc/hosts > /etc/resolv.conf ##前者優先順序高於後者

vim /etc/nsswitch.conf
hosts:     files  dns                 /etc/hosts優先

在這裡插入圖片描述
將dns 新增到前面 ,

etc/resolv.conf dns 指向優先

在這裡插入圖片描述
比如: 將天貓的ip故意寫錯
在這裡插入圖片描述
在pin天貓
在這裡插入圖片描述
會發現依然ping通 因為dns有優先權所以解析正確