Linux網絡設定
- 一. 虛拟網卡模式介紹
- 二. 檢視網絡配置
-
- 1. 使用ifconfig指令檢視網絡接口位址
-
- 1.1 檢視活動的網絡接口裝置
- 1.2 檢視指定的網絡接口資訊
- 2. 使用ip/ethtool指令檢視網絡接口
- 3. 使用route指令檢視路由表條目
- 4. 使用netstat、ss指令檢視網絡連接配接情況
- 5. 檢視主機名hostname
- 三. 測試網絡連接配接
-
- 1.使用ping指令測試網絡連通性
- 2. 使用traceroute指令跟蹤資料包的路由途徑
- 3. 使用nslookup指令測試DNS域名解析Name server
- 四、設定網絡位址參數
-
- 4.1 設定網絡接口參數 ifconfig
- 4.2 設定路由記錄route
- 五、網絡配置檔案修改
-
- 5.1 網絡接口配置檔案
- 5.2 啟動,禁用網絡接口配置
- 5.3 主機名稱配置檔案
- 5.4 域名解析配置檔案
一. 虛拟網卡模式介紹
橋接模式 vmnet0 區域網路可以通路虛拟伺服器,把虛拟機暴露在區域網路環境下,可以直接被通路
僅主機模式 vmnet1 僅主機相連,無法與外部通訊,把虛拟機直接建構成區域網路無法通路外部網絡
NAT模式 vmnet8 把虛拟機連接配接到類似三層交換機的虛拟網卡上,不僅可以内部通信,還可以外部通信
二. 檢視網絡配置
1. 使用ifconfig指令檢視網絡接口位址
主機的網絡接口卡(網卡)通常稱為網絡接口,在Linux系統中,使用ifconfig指令可以檢視網絡接口的位址配置資訊。
1.1 檢視活動的網絡接口裝置
ifconfig不帶任何選項和參數,顯示目前主機中已啟用(活動)的網絡接口資訊。
直接執行ifconfig指令可以看到eth0和lo兩個網絡接口資訊
注意:CENTOS7之前網卡命名采用eth0、eth1等,而centos7版本采用了一緻的網絡裝置名(Consistent Network Device Naming),該命名是與實體裝置本身相關的。
eth0對應第一塊實體網卡,lo對應為虛拟回環接口。
eth0:第一塊實體網卡。eth是ethernet縮寫,表示網卡類型為以太網,數字0表示第一塊網卡。如有多個實體網卡,第2塊為eth1,以此類推
lo:回環網絡接口。lo是loopback縮寫,并不代表真正的網絡接口,而是一個虛拟的網絡接口,其ip位址預設是127.0.0.1。回環位址通常僅用于對本機的網絡測試。
如果想要檢視所有網絡接口資訊,隻需要在ifconfig指令後加上-a選項即可,即ifconfig -a。
1.2 檢視指定的網絡接口資訊
當隻需要檢視其中一個網絡接口資訊的時候,可以使用網絡接口的名稱作為ifconfig指令的參數(不論該網絡接口是否處于激活狀态)。
例:執行ifconfig ens33指令後可以隻檢視ens33的配置資訊。
從上述指令顯示結果中,可以獲知網卡的一些基本資訊,
ether:表示網絡接口的實體位址(MAC位址),如00:0c:29:e0:40:c8,網絡接口的實體位址通常不能更改是網卡在生産時确定的全球唯一的硬體位址。
inet:表示網絡接口的ip位址,如192.168.220.220
broadcast:表示網絡接口所在的網絡的廣播位址,如192.168.220.255
netmask:表示網絡接口的子網路遮罩,如255.255.255.0
除此以外,還能夠通過TX,RX等資訊了解到通過該網絡接口發送和接受的資料包個數、流量等更多屬性。
2. 使用ip/ethtool指令檢視網絡接口
ip/ethtool與ifconfig指令相同,也是檢視網絡接口指令。ip/ethtool指令的功能更強大,它不僅僅可以檢視網絡接口的基本資訊還可以檢視更深層的内容,如檢視網絡接口的資料鍊路層、網絡層資訊和網絡接口的速率、模式等資訊。
其中常有的指令有
ip link :檢視網絡接口的資料鍊路層資訊。
ipaddress :檢視網絡接口的網絡層資訊。
ethtool eth0 :檢視指定網絡接口的速率,模式等資訊。
3. 使用route指令檢視路由表條目
Linux系統中路由表決定着從本機向其他主機、其他網絡發送資料的去向,是排除網絡故障的關鍵資訊。直接執行route指令可以檢視目前主機中的路由表資訊,在輸出結果中,Destination列對應目标網段的位址,Gateway列對應下一跳路由器的位址,Iface列對應發送資料的網絡接口。
當目标網段為default時,表示此行是預設網關記錄
當下一條跳為*時,表示目标網段時與本機直接相連的
結合 -n選項,可将路由記錄中的位址顯示為數字形式,可以跳過解析主機名的過程,在路由表條目較多的情況下能夠加快執行速度
4. 使用netstat、ss指令檢視網絡連接配接情況
1, netstat指令
netstat指令可以檢視目前系統的網絡連接配接狀态、路由表、接口統計等資訊。是了解網絡狀态及排除網絡服務故障的有效工具。
netstat指令常用選項如下
-a:顯示目前主機中所有活動的網絡連接配接資訊(包括監聽、非監聽狀态的服務端口)
-n:以數字的形式顯示相關的主機位址、端口等資訊
-r:顯示路由表資訊
-l : 顯示處于監聽狀态的網絡連接配接裝置
-t:檢視tcp協定相關資訊
-u:檢視UDP協定相關的資訊
-p:顯示與網絡相關聯的程序号、程序号名稱資訊(該選項需要root權限)。
通常使用-anpt組合選項,以數字形式顯示目前系統中所有的tcp連接配接資訊,同僚顯示對應的程序資訊。結合指令管道使用grep指令,還可以在結果中過濾出所需要的特定記錄。
例 執行以下操作可以檢視本機中是否有監聽tcp80端口(即标準ftp服務)的服務程式,輸出資訊中心包括PID号和程序名稱。
注意:檢視服務狀态是否運作有兩種方法
第一 ps aux 看程序 更靠譜
第二 netsta t看端口
Apache安裝檢視程序
安裝 Yum -y install httpd
開啟
systemctl start httpd
Netstat -ntap | grep httpd 檢視tcp
ESTABLISHED正在連接配接
LISTEN 正在監聽
netstat -nuap 檢視udp
2、ss指令
ss是Socket Statistics的縮寫。顧名思義,ss指令可以用來擷取socket統計資訊,它可以顯示和netstat類似的内容。但ss的優勢在于它能夠顯示更多更詳細的有關TCP和連接配接狀态的資訊,而且比netstat更快速更高效。
ss快的秘訣在于,它利用到了TCP協定棧中tcp_diag。tcp_diag是一個用于分析統計的子產品,可以獲得Linux 核心中第一手的資訊,這就確定了ss的快捷高效。當然,如果你的系統中沒有tcp_diag,ss也可以正常運作,隻是效率會變得稍慢。(但仍然比 netstat要快。)
并發連接配接不足上萬的時候用natstat檢視網絡連接配接情況,當并發上萬了可以使用ss指令檢視網絡連接配接情況
ss能去通路tcp下的flag子產品,tcp_diag是最佳指令
指令格式:
ss [參數]
ss [參數] [ 過濾 ]
指令功能:
-a, --all 所有,顯示所有套接字(sockets)
-l, --listening 監聽狀态資訊,顯示監聽狀态的套接字(sockets)
-t, --tcp 顯示tcp資訊,僅顯示 TCP套接字(sockets)
-u, --udp 顯示udp資訊,僅顯示 UCP套接字(sockets)
-n, --numeric 檢視端口,不解析服務名稱
-p, --processes 看PID程序号 顯示使用套接字(socket)的程序
-r, --resolve 解析主機名,直接用名稱形式顯示 預設是r
5. 檢視主機名hostname
修改主機名
Hostname 主機名 臨時修改(關機重新開機後消失)
Hostnamectl set-hosmname 主機名 永久修改
永久修改指令
三. 測試網絡連接配接
1.使用ping指令測試網絡連通性
使用ping指令可向目的主機持續地發送測試資料包,并顯示回報結果,直到按Ctrl——C組合鍵後終止測試并顯示最終統計結果。
運作ping指令,若不能獲得從目标發揮的回報資料包,則表示在本機到目标主機之間存在連通性障礙。
若看到 destination host UNreachable 資訊,則表示目的主機不可達,可能目标位址不存在或主機已經關閉
若看到network is UNreachable 資訊,則表示沒有可用的路由資訊(如預設網關),無法達到目标主機所在的網絡。
當網絡中存在影響通信過程穩定性的因素(網卡故障,病毒或網絡攻擊)時,會看到request timeout 回報結果,表示與目标主機間的連接配接逾時(資料包響應緩慢或丢失)。當目标主機有嚴格的防火牆限制時,也可能收到發回的request timeout。
網絡排障思路
2. 使用traceroute指令跟蹤資料包的路由途徑
使用traceroute指令可以測試從目前主機到目的主機之間經過了那些網絡節點,并顯示各中間節點的連接配接狀态(響應時間)。對于無法響應的節點,連接配接狀态将顯示為*。
traceroute 是用來發出資料包的主機到目标主機之間所經過的網關的工具。traceroute 的原理是試圖以最小的TTL發出探測包來跟蹤資料包到達目标主機所經過的網關,然後監聽一個來自網關ICMP的應答。發送資料包的大小預設為 38個位元組。
traceroute [參數選項] hostname,域名或 IP位址
參數選項:
-i 指定網絡接口,對于多個網絡接口有用。比如 -i eth1 或-i ppp1等;
-m 把在外發探測試包中所用的最大生存期設定為max-ttl次轉發,預設值為30次;
-n 顯示IP位址,不查主機名。當DNS不起作用時常用到這個參數;
-p port 探測包使用的基本UDP端口設定為port ,預設值是33434
-q n 在每次設定生存期時,把探測包的個數設定為值n,預設時為3;
-r 繞過正常的路由表,直接發送到網絡相連的主機;
-w n 對外發探測包的等待響應時間設定為n秒,預設值為3秒;
3. 使用nslookup指令測試DNS域名解析Name server
當域名解析出現異常時,将無法使用域名的形式通路網絡中的web站點、電子郵件系統等服務。
nslookup指令是用來測試域名解析的專用工具,使用時隻要指定要解析的目标域名作為參數即可。
例:執行nslookup www.google.com指令後,nslookup程式将送出查詢請求,詢問站點www.google.com對應的ip位址是多少。
tcp 53用于連接配接,Udp53 用于解析 。
域名解析測試 nslookup(Linux和win都能用) dig(linux專屬指令)
dig解析域名的方式
設定DNS的三種方法
DNS配置
方法一 直接寫指令 resolv.conf配置檔案做域名解析
修改 /etc/resolv.conf nameserver 域名伺服器IP
方法二 vim /etc/sysconfig/network-scripts/ifcfg-ens33
DNS1=8.8.8.8/192.168.195.2(本機網關)
:wq
Systemctl restart network
方法三 直接配置本地解析
vim /etc/hosts
百度的ip位址 www.baidu.com
四、設定網絡位址參數
4.1 設定網絡接口參數 ifconfig
4.2 設定路由記錄route
五、網絡配置檔案修改
5.1 網絡接口配置檔案
/etc/sysconfig/network-scripts/目錄下
檔案名格式為“ifcfg-xxx”
ifcfg-ens33:第一塊以太網卡的配置檔案
回環接口lo的配置檔案是“ifcfg-lo”
5.2 啟動,禁用網絡接口配置
重新開機network網絡服務
禁用,啟用網絡接口
禁掉,不然出問題
5.3 主機名稱配置檔案
/etc/sysconfig/network檔案 , centos6系統中再這,儲存全局網絡設定,主要包括主機名資訊。
/etc/hostname檔案,centos7系統中在這。
5.4 域名解析配置檔案
/etc/resolv.conf檔案
儲存本機需要使用的DNS伺服器的IP位址。
對該檔案所做的修改會立刻生效。
Linux系統中最多可以指定3個(第三個以後将被忽略)不同的DNS伺服器位址,優先使用第一個DNS伺服器。
[[email protected] ~]# vim /etc/resolv.conf
search localdomain '預設的搜尋域(域名字尾),即,當通路主機localhost 時,相當于通路 localhost.localdomain'
nameserver 100.100.1.30
nameserver 100.100.100.30
```![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20200706044427435.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ3MTYxMjk1,size_16,color_FFFFFF,t_70)![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20200706044436302.png)
## 5.5 本地主機映射檔案
### 5.5.1 /etc/hosts檔案
1儲存主機名與IP位址的映射記錄
一般用來儲存經常需要通路的主機的資訊
### 5.5.2 hosts檔案和DNS伺服器的比較
預設情況下,系統首先從hosts檔案查找解析記錄
當通路一個未知的域名時,先查找該檔案中是否有相應的映射記錄,如果找不到在去向DNS伺服器查詢
3.hosts檔案隻對目前的主機有效
因為hosts檔案隻儲存在本地
4.hosts檔案可減少DNS查詢過程,進而加快通路速度
在/etc/hosts檔案中添加正确的映射記錄(經常通路的一些網站),減少了DNS查詢,提高了上網速度![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20200706044653232.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ3MTYxMjk1,size_16,color_FFFFFF,t_70)
# 六、總結
![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/20200706044817487.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ3MTYxMjk1,size_16,color_FFFFFF,t_70)