本文介紹了Linux系統(tǒng)中常用的網(wǎng)絡(luò)配置和監(jiān)控命令,包括ifconfig、hostname、route、netstat、ss、lsof、ping、traceroute、nslookup等命令的使用方法和作用,適用于系統(tǒng)管理員在日常管理和故障排查中的網(wǎng)絡(luò)操作
一、查看網(wǎng)絡(luò)配置
1. ifconfig 命令 - 查看網(wǎng)絡(luò)接口信息
ifconfig #查看所有活動(dòng)的網(wǎng)絡(luò)接口信息
ifconfig "網(wǎng)絡(luò)接口" #查看指定的網(wǎng)絡(luò)接口信息(無論網(wǎng)卡是否啟用)
ifconfig -a #顯示所有網(wǎng)絡(luò)接口信息(包括未啟用的網(wǎng)卡)
ifconfig "網(wǎng)絡(luò)接口" "ip地址/掩碼長(zhǎng)度" #設(shè)置虛擬網(wǎng)卡
例:
ifconfig ens33:0 192.168.10.11/24
ifconfig ens33:0 down #臨時(shí)禁用虛擬網(wǎng)卡
ifconfig ens33:0 up #開啟虛擬網(wǎng)卡
ifdown "網(wǎng)絡(luò)接口" #禁用網(wǎng)卡
ifup "網(wǎng)絡(luò)接口" #啟動(dòng)網(wǎng)卡
2. hostname 命令 - 查看主機(jī)名稱
- 查看或臨時(shí)設(shè)置當(dāng)前主機(jī)名:
hostnamectl set-hostname "主機(jī)名"
vi hostname #設(shè)置完成后需重啟系統(tǒng)生效
3. route 命令 - 查看路由表?xiàng)l目
查看或設(shè)置主機(jī)中的路由表信息
二、查看網(wǎng)絡(luò)連接情況
1. nestat 命令
nestat "選項(xiàng)"
| 常用選項(xiàng) | 解釋 |
|---|
| -a | 顯示主機(jī)中所有活動(dòng)的網(wǎng)絡(luò)連接信息(包括監(jiān)聽、非監(jiān)聽狀態(tài)的服務(wù)端口) |
| -n | 以數(shù)字的形式顯示相關(guān)的主機(jī)地址、端口等信息 |
| -r | 顯示路由表信息 |
| -l | 顯示處于監(jiān)聽(Listening)狀態(tài)的網(wǎng)絡(luò)連接及端口信息 |
| -t | 查看TCP(Transmission Control Protocol,傳輸控制協(xié)議)相關(guān)的信息 |
| -u | 查看UDP(User Datagram Protocol,用戶數(shù)據(jù)包協(xié)議)相關(guān)的信息 |
| -p | 顯示與網(wǎng)絡(luò)連接相關(guān)的進(jìn)程號(hào)、進(jìn)程名稱信息(該選項(xiàng)需要root權(quán)限) |
2. ss 命令
ss "選項(xiàng)"
| 選項(xiàng) | 解釋 |
|---|
| -t | TCP協(xié)議相關(guān) |
| -u | UDP協(xié)議相關(guān) |
| -w | 裸套接字相關(guān) |
| -x | unix sock相關(guān) |
| -l | Listen狀態(tài)的連接 |
| -a | 所有 |
| -n | 數(shù)字格式 |
| -p | 相關(guān)的程序及PID |
| -e | 擴(kuò)展的信息 |
| -m | 內(nèi)存用量 |
| -o | 計(jì)時(shí)器信息 |
| -r | --resolve 把IP解釋為域名,把端口號(hào)解釋為協(xié)議名稱 |
3. netstat 命令與ss 命令的區(qū)別
- ss 命令可以查看網(wǎng)絡(luò)連接信息
- ss 命令主要向socket獲取統(tǒng)計(jì)信息
- ss 命令可以查看內(nèi)存
- 2條命令均可查看pid和程序\進(jìn)程名
4. lsof 命令(List Open Files)- 列出系統(tǒng)中打開的文件的命令行工具
它可以顯示當(dāng)前系統(tǒng)中打開的文件、目錄、套接字、管道等資源,以及與它們相關(guān)進(jìn)程
lsof "選項(xiàng)"
lsof #列出所有打開的文件和網(wǎng)絡(luò)連接
lsof -p "pid" #列出指定進(jìn)程ID(PID)打開的文件和網(wǎng)絡(luò)連接
lsof -u "username" #列出指定用戶打開的文件和網(wǎng)絡(luò)連接
lsof -i:"端口號(hào)" #列出指定端口被哪些進(jìn)程占用
lsof -i -sTCP:LISTEM #以監(jiān)聽模式查看網(wǎng)絡(luò)連接
lsof -c "commond" #列出指定命令打開的文件
lsof -i -P -a -p "PID"
# -i:表示只顯示網(wǎng)絡(luò)連接信息
# -P:強(qiáng)制顯示端口號(hào)
# -a:表示進(jìn)行與查詢條件的邏輯與操作
# -p:表示指定要查詢的程序ID
三、測(cè)試網(wǎng)絡(luò)連接
1. ping 命令 - 測(cè)試網(wǎng)絡(luò)連通性
ping "選項(xiàng)"
| 常用選項(xiàng) | 解釋 |
|---|
| -c | 發(fā)送包的個(gè)數(shù) |
| -i | 發(fā)送包的間隔時(shí)間 |
| -W | 超時(shí)時(shí)間 |
| -w | 多少秒后停止ping命令操作 |
2. traceroute - 跟蹤數(shù)據(jù)包的路由途徑
測(cè)試從當(dāng)前主機(jī)到目的主機(jī)之間經(jīng)過的網(wǎng)路節(jié)點(diǎn)
traceroute "目標(biāo)主機(jī)地址"
3. nslookup - 測(cè)試DNS域名解析
nslookup "地址"
[root@wzx ~]# nslookup www.csdn.net
Server: 114.114.114.114
Address: 114.114.114.114#53
Non-authoritative answer:
www.csdn.net canonical name = 55cb88f4.csdn.net.cname.yunduns.com.
Name: 55cb88f4.csdn.net.cname.yunduns.com
Address: 218.95.237.78
四、設(shè)置網(wǎng)絡(luò)參數(shù)
1.設(shè)置網(wǎng)絡(luò)參數(shù)的方式
臨時(shí)配置 - 使用命令調(diào)整網(wǎng)絡(luò)參數(shù)
- 簡(jiǎn)單、快速,可直接修改運(yùn)行中的網(wǎng)絡(luò)參數(shù)
- 一般只適合在調(diào)試網(wǎng)絡(luò)的過程中使用
- 系統(tǒng)重啟以后,所做的修改將會(huì)失效
固定設(shè)置 - 通過配置文件修改網(wǎng)絡(luò)參數(shù)
- 修改各項(xiàng)網(wǎng)絡(luò)參數(shù)的配置文件
- 適合對(duì)服務(wù)器設(shè)置固定參數(shù)時(shí)使用
- 需要重載網(wǎng)絡(luò)服務(wù)器或者重啟以后才會(huì)生效
2. ifconfig 命令 - 設(shè)置網(wǎng)絡(luò)接口參數(shù)
- 設(shè)置網(wǎng)絡(luò)接口的IP地址、子網(wǎng)掩碼:
ifconfig "網(wǎng)絡(luò)接口" "ip地址" netmask "子網(wǎng)掩碼"
ifconfig "網(wǎng)絡(luò)接口" "IP地址/掩碼長(zhǎng)度"
ifconfig "網(wǎng)絡(luò)接口" up
ifconfig "網(wǎng)絡(luò)接口" down
ifconfig "網(wǎng)絡(luò)接口:序號(hào)" "IP地址"
3. route 命令 - 設(shè)置路由記錄
route add -net "網(wǎng)段地址" gw "IP地址"
route del -net "網(wǎng)段地址"
- 向路由表中添加默認(rèn)網(wǎng)關(guān)記錄:
route add default gw "IP地址"
- 刪除路由表中默認(rèn)的網(wǎng)關(guān)記錄:
route del default gw "IP地址"
4.永久添加路由
靜態(tài)路由配置文件:/etc/sysconfig/static-routes
vi /etc/sysconfig/static-routes #編輯靜態(tài)路由配置文件
any net any gw 192.168.233.21 #將所有網(wǎng)絡(luò)流量都路由到192.168.233.21網(wǎng)關(guān)
any net 192.168.3.0/24 gw 192.168.233.21
#將目的網(wǎng)絡(luò)為192.168.3.0/24的所有流量路由到192.168.233.21網(wǎng)關(guān)
anynet 10.0.0.0 netmask 255.0.0.0 gw 192.168.233.21
#將目的網(wǎng)絡(luò)為10.0.0.0的所有流量,使用掩碼255.0.0.0,路由到192.168.233.21網(wǎng)關(guān)
any host 192.168.100.100 gw 192.168.233.21
#將目的IP為192.168.100.100的所有流量路由到192.168.233.21網(wǎng)關(guān)
#修改后需要重啟網(wǎng)絡(luò)服務(wù),否則修改不生效
systemctl restart network #重啟網(wǎng)絡(luò)服務(wù)
5.配置網(wǎng)絡(luò)接口
網(wǎng)卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33
vi /etc/sysconfig/network-scripts/ifcfg-ens33 #編輯網(wǎng)卡配置文件
TYPE=Ethernet #設(shè)置網(wǎng)卡類型,"Ethernet"表示以太網(wǎng)
DEVICE=ens33 #設(shè)置網(wǎng)卡名稱
ONBOOT=yes #設(shè)置網(wǎng)卡是否在Linux操作系統(tǒng)啟動(dòng)時(shí)激活
BOOTPROTO=static #設(shè)置網(wǎng)卡的配置方式,"static"表示使用靜態(tài)IP地址;"dhcp"表示動(dòng)態(tài)獲取IP地址
IPADDR=192.168.100.10 #設(shè)置網(wǎng)卡的IP地址
NETMASK=255.255.255.0 #設(shè)置網(wǎng)卡的子網(wǎng)掩碼
GATEWAY=192.168.100.2 #設(shè)置網(wǎng)卡的默認(rèn)網(wǎng)關(guān)地址
DNS1=114.114.114.114 #設(shè)置DNS服務(wù)器的IP(配置于網(wǎng)卡上)
systemctl restart network #配置完成后需重啟網(wǎng)卡
6.配置DNS域名解析服務(wù)器
域名解析配置文件:/etc/resolv.conf
vi /etc/resolv.conf
nameserver 144.144.144.144 #配置DNS于系統(tǒng)中
systemctl restart network #配置完成后需重啟網(wǎng)卡服務(wù)
7.保存域名\主機(jī)名與IP地址的映射記錄
文件位于:/etc/hosts
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
218.95.237.78 www.csdn.net
192.168.10.20 server2
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。