centos配置網絡命令
ifconfig [interface] 加網卡名
ifconfig -a 顯示全部網卡信息(包括禁用的網卡)
ifconfig IFACE [up|down] (啟用禁用網卡)
ifconfig interface [aftype] options | address ...
ifconfig IFACE IP/netmask [up]
ifconfig IFACE IP netmask NETMASK
註意:立即生效
啟用混雜模式:[-]promisc (接收所有經過網卡的數據包)
路由管理命令
查看:route -n
添加:route add
route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
添加三種路由的方式:
主機路由:route -a -host 172.16.18.18 gw 172.18.0.1 dev eth0
網絡路由:route -a -net 172.16.0.0/16 gw 172.18.0.1dev eth0
route -a -net 172.16.0.0 netmask 255.255.0.0 gw 172.18.0.1 dev eth0
默認路由:route -a -net 0.0.0.0 netmask 0.0.0.0 gw 172.18.0.1 dev eth0
route -a default gw 172.18.0.1 dev eth0
ps:設備號有時可不寫,系統會自動識別,依實際情況而定
netstat命令
顯示網絡連接:
netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]] [--program|-p]
-t: tcp協議相關
-u: udp協議相關
-w: raw socket相關
-l: 處於監聽狀態
-a: 所有狀態
-n: 以數字顯示IP和端口
-e:擴展格式
-p: 顯示相關進程及PID
常用組合:
-tan, -uan, -tnl, -unl
顯示路由表:
netstat {--route|-r} [--numeric|-n]
-r: 顯示內核路由表
-n: 數字格式
顯示接口統計數據:
netstat {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e] [--program|-p] [--numeric|-n]
netstat -i 顯示全部
netstat -I IFACE 中間不能夠有空格,如-Ieth0
註:ifconfig netstat 命令歷史久遠,逐漸被ip命令取代,但目前最新版centos還可以使用(7.4)
ip
ip addr { add | del } IFADDR dev STRING
[label LABEL]:添加地址時指明網卡別名
[scope {global|link|host}]:指明作用域
global: 全局可用
link: 僅鏈接可用
host: 本機可用
[broadcast ADDRESS]:指明廣播地址
ip address show - look at protocol addresses
[dev DEVICE]
[label PATTERN]
[primary and secondary]
ip address flush - 使用格式同show
ip route - routing table management
添加路由:ip route add
ip route add TARGET via GW dev IFACE src SOURCE_IP
TARGET:
主機路由:IP
網絡路由:NETWORK/MASK
例 ip route add 192.168.0.0/24 via 172.16.0.1
例 ip route add 192.168.1.13 via 172.16.0.1
添加網關:ip route add default via GW dev IFACE
例 ip route add default via 172.16.0.1
刪除路由:ip route delete
ip route del TARGET
顯示路由:ip route show|list
清空路由表:ip route flush [dev IFACE] [via PREFIX]
ip route flush dev eth0
ss命令:
格式:ss [OPTION]... [FILTER]
選項:
-t: tcp協議相關
-u: udp協議相關
-w: 裸套接字相關
-x:unix sock相關
-l: listen狀態的連接
-a: 所有
-n: 數字格式
-p: 相關的程序及PID
-e: 擴展的信息
-m:內存用量
-o:計時器信息
FILTER := [ state TCP-STATE ] [ EXPRESSION ]
TCP的常見狀態:
tcp finite state machine:
LISTEN: 監聽
ESTABLISHED:已建立的連接
FIN_WAIT_1:終止等待1
FIN_WAIT_2:終止等待2
SYN_SENT:syn發送
SYN_RECV:syn接收
CLOSED:關閉
EXPRESSION:
dport =
sport =
示例:ss '( dport = :ssh or sport = :ssh )'
常用組合:
-tan, -tanl, -tanlp, -uan
常見用法
ss -l 顯示本地打開的所有端口
ss -pl 顯示每個進程具體打開的socket
ss -t -a 顯示所有tcp socket
ss -u -a 顯示所有的UDP Socekt
ss -o state established '( dport = :ssh or sport = :ssh )' 顯示所有已建立的ssh連接
ss -o state established '( dport = :http or sport = :http )' 顯示所有已建立的HTTP連接
ss -s 列出當前socket詳細信息
ss -l 顯示本地打開的所有端口
ss -pl 顯示每個進程具體打開的socket
ss -t -a 顯示所有tcp socket
ss -u -a 顯示所有的UDP Socekt
ss -o state established '( dport = :ssh or sport = :ssh )' 顯示所有已建立的ssh連接
ss -o state established '( dport = :http or sport = :http )' 顯示所有已建立的HTTP連接
ss -s 列出當前socket詳細信息
centos配置網絡命令