Linux的網路配置(二)
一、虛擬機器的網路連通
1.建實驗環境
主機端開啟主機端路由功能,調整主機端路由配置。[[email protected] ~]$ su - root ##切換到真機的超級使用者 Password: Last login: Wed Oct 24 18:16:04 CST 2018 on pts/0 [[email protected] ~]# firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: br0 enp0s20f0u1c4i2 sources: services: dhcpv6-client ssh ports: protocols: masquerade: no ##路由功能是關閉的 forward-ports: sourceports: icmp-blocks: rich rules:
[[email protected] ~]# firewall-cmd --add-masquerade ##開啟主機的路由功能 success [[email protected] ~]# sysctl -a | grep ip_forward ##查詢核心路由功能是否開啟 net.ipv4.ip_forward = 1 ##現實為1時核心路由開啟 net.ipv4.ip_forward_use_pmtu = 0
注意:若:主機的ipv4顯示為0,編輯/etc/sysctl.conf檔案。
[[email protected] ~]# vim /etc/sysctl.conf
虛擬的網路配置
[[email protected] ~]# cd /etc/sysconfig/network-scripts/ [[email protected] network-scripts]# vim ifcfg-eth0 ##配置檔案中設定引數 [[email protected] network-scripts]# systemctl restart network ##重新啟動閘道器 [[email protected]
network-scripts]# route -n ##查詢閘道器是否設定成功 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.25.254.69 0.0.0.0 UG 1024 0 0 eth0 1.1.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 172.25.254.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0實驗開始
主機ping百度
[[email protected] ~]$ ping -c 3 www.baidu.com PING www.a.shifen.com (220.181.112.244) 56(84) bytes of data. 64 bytes from 220.181.112.244 (220.181.112.244): icmp_seq=1 ttl=53 time=62.3 ms 64 bytes from 220.181.112.244 (220.181.112.244): icmp_seq=2 ttl=53 time=60.8 ms 64 bytes from 220.181.112.244 (220.181.112.244): icmp_seq=3 ttl=53 time=57.8 ms --- www.a.shifen.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 57.874/60.359/62.345/1.859 ms
主機可以ping通百度,且得到百度IP地址220.181.112.244。
虛擬機器器因為沒有配置DNS ,所以只能ping 220.181.112.244
[[email protected] network-scripts]# ping -c 3 220.181.112.244 PING 220.181.112.244 (220.181.112.244) 56(84) bytes of data. 64 bytes from 220.181.112.244: icmp_seq=1 ttl=52 time=224 ms 64 bytes from 220.181.112.244: icmp_seq=2 ttl=52 time=40.4 ms 64 bytes from 220.181.112.244: icmp_seq=3 ttl=52 time=59.0 ms --- 220.181.112.244 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 40.492/108.013/224.497/82.714 ms
實驗完成
二、DNS的配置
1.什麼是DNS
把域名翻譯成IP地址的軟體稱為域名系統,即DNS。
DNS 是計算機域名系統 (Domain Name System 或 Domain Name Service) 的縮寫,它是由域名解析器和域名伺服器組成的。通過它可以把你需要訪問的網址找到然後把資訊送到你電腦上。2.臨時配置虛擬機器器的DNS
注意:主機去ping百度時間,會把域名轉換成IP地址。而虛擬機器不會,會出現UNKNOW
同過編輯本地解析檔案我們將我們知道的域名和IP輸入進去並儲存。
[[email protected] ~]# vim /etc/hosts ##本地域名解析配置檔案
由於手動的新增一個一個網址過於繁瑣我們可以去新增一個DNS伺服器,預設情況下主機會在本地尋找,若是找不到系統會將此域名交給DNS域名解析伺服器。配置檔案地址/etc/resolv.conf。
[[email protected] ~]# vim /etc/resolv.conf [[email protected] ~]# ping -c 3 www.taobao.com PING www.taobao.com.danuoyi.tbcache.com (171.8.242.186) 56(84) bytes of data. 64 bytes from 8.171.broad.ha.dynamic.163data.com.cn (171.8.242.186): icmp_seq=1 ttl=38 time=61.4 ms 64 bytes from 8.171.broad.ha.dynamic.163data.com.cn (171.8.242.186): icmp_seq=2 ttl=38 time=85.1 ms 64 bytes from 8.171.broad.ha.dynamic.163data.com.cn (171.8.242.186): icmp_seq=3 ttl=38 time=82.7 ms --- www.taobao.com.danuoyi.tbcache.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 61.497/76.468/85.114/10.631 ms
可以ping同為在本地新增的淘寶網。
注意:以上的設定都是臨時設定,系統重新啟動以後,所有的設定都無法保留
3.永久的設定DNS配置
(1)靜態設定 (設定網路配置檔案)
[[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 ##設定配置檔案 [[email protected] ~]# systemctl restart network ##重新啟動閘道器
一般DNS 可以設定兩個,另一個為備用。
(1)動態設定 (設定網路配置檔案)
[[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 [[email protected] ~]# vim /etc/resolv.conf [[email protected] ~]# systemctl restart network [[email protected] ~]# cat /etc/resolv.conf # Generated by NetworkManager domain ilt.example.com search ilt.example.com example.com nameserver 114.114.114.114
4.本地解析和DNS的優先順序調整
系統預設情況下本地解析的優先順序高於DNS的解析優先順序,/etc/nsswitch.conf下調節優先順序。
[[email protected] ~]# vim /etc/nsswitch.conf 39 hosts: files dns ##file 為本地解析 dns 為伺服器解析
注意:調節file和dns的先後順序就可以調整優先順序。
三、nmcli命令
注意:nmcli命令需要 NetworkManager開啟以後才可以用
[[email protected] ~]# systemctl stop NetworkManager [[email protected] ~]# nmcli device show Error: NetworkManager is not running.
nmcli device show eth0 ##顯示eth0的資訊 nmcli device status eth0 ##顯示eth0的裝置狀態 nmcli device disconnect eth0 ##關閉名為eth0的裝置 nmcli device connect eth0 ##開啟名為eth0的裝置
注意:以上服務主要用於企業操作,systemctl restart network 所有的網路介面包括網路都重新啟動,造成不必要的系統問題,所在才使用此命令
[email protected] ~]# nmcli connection show ##顯示所有網路連線 NAME UUID TYPE DEVICE System eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 802-3-ethernet eth1 System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 802-3-ethernet eth0 [[email protected] ~]# nmcli connection delete 'System eth1' ##刪除連結命為eth1的網路連線
[[email protected] ~]# nmcli connection add type ethernet con-name westos ifname eth1 autoconnect yes ##建立一個動態網口 Connection 'westos' (6a73517e-5218-4c87-a77b-92bb099b42fe) successfully added. ##westos建立成功 [[email protected] ~]# nmcli connection show NAME UUID TYPE DEVICE westos 6a73517e-5218-4c87-a77b-92bb099b42fe 802-3-ethernet eth1 System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 802-3-ethernet eth0
注意:此命令不能多次執行,記得刪除之前的設定。
[[email protected] ~]# nmcli connection add con-name westos ifname eth1 type ethernet ip4 1.1.1.100/24 ##設定一個靜態IP Connection 'westos' (d7644ffd-a451-4d72-b160-81fd6daa8736) successfully added. [[email protected] ~]# nmcli connection modify westos ipv4.method auto ##改為動態IPV4 [[email protected] ~]# nmcli connection up westos [[email protected] ~]# nmcli connection down westos