基礎運維:十大得心應手的網絡管理命令
1.簡介
一個類似top的實時監控工具,可以用來監控網卡的實時流量、反向解析IP、顯示端口信息等等,
高級的監控有TCP/IP連接等。
2.安裝
2.1安裝額外倉庫源
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
2.2快速安裝
[root@leo ~]# yum install iftop
2.3在命令行輸入命令:[root@leo ~]# iftop
出現這個界面:
3.命令相關參數及說明
3.1 界面說明
界面上面顯示的是類似刻度尺的刻度範圍,為顯示流量圖形的長條作標尺用的。
中間的<= =>這兩個左右箭頭,表示的是流量的方向。TX:發送流量
RX:接收流量
TOTAL:總流量
Cumm:運行iftop到目前時間的總流量
peak:流量峰值
rates:分別表示過去 2s 10s 40s 的平均流量
3.2 命令參數
3.2.1 官方全參:
-h display this message -n don‘t do hostname lookups -N don‘t convert port numbers to services -p run in promiscuous mode (show traffic between other hosts on the same network segment) -b don‘t display a bar graph of traffic -B Display bandwidth in bytes -i interface listen on named interface -f filter code use filter code to select packets to count (default: none, but only IP packets are counted) -F net/mask show traffic flows in/out of IPv4 network -G net6/mask6 show traffic flows in/out of IPv6 network -l display and count link-local IPv6 traffic (default: off) -P show ports as well as hosts -m limit sets the upper limit for the bandwidth scale -c config file specifies an alternative configuration file -t use text interface without ncurses Sorting orders: -o 2s Sort by first column (2s traffic average) -o 10s Sort by second column (10s traffic average) [default] -o 40s Sort by third column (40s traffic average) -o source Sort by source address -o destination Sort by destination address The following options are only available in combination with -t -s num print one single text output afer num seconds, then quit -L num number of lines to print
3.2.2常用參數(未進入界面時使用):
-i 指定監測的網卡
-B 以bytes為單位顯示流量(默認是bits)
-n 使host信息默認直接都顯示IP
-N 使端口信息默認直接都顯示端口號
-F 顯示指定網段的進出流量
-h 顯示幫助信息
-p 使用這個參數後,中間的列表顯示的本地主機信息,出現了本機以外的IP信息;
-b 使流量圖形條默認就顯示;
-f 這個暫時還不太會用,過濾計算包用的;
-P 使host信息及端口信息默認就都顯示;
-m 設置界面最上邊的刻度的最大值,刻度分五個大段顯示,例:# iftop -m 100M
3.2.3 交互參數(進入界面後使用):
按h切換是否顯示幫助;
按n切換顯示本機的IP或主機名;
按s切換是否顯示本機的host信息;
按d切換是否顯示遠端目標主機的host信息;
按t切換顯示格式為2行/1行/只顯示發送流量/只顯示接收流量;
按N切換顯示端口號或端口服務名稱;
按S切換是否顯示本機的端口信息;
按D切換是否顯示遠端目標主機的端口信息;
按p切換是否顯示端口信息;
按P切換暫停/繼續顯示;
按b切換是否顯示平均流量圖形條;
按B切換計算2秒或10秒或40秒內的平均流量;
按T切換是否顯示每個連接的總流量;
按l打開屏幕過濾功能,輸入要過濾的字符,比如ip,按回車後,屏幕就只顯示這個IP相關的流量信息;
按L切換顯示畫面上邊的刻度;刻度不同,流量圖形條會有變化;
按j或按k可以向上或向下滾動屏幕顯示的連接記錄;
按1或2或3可以根據右側顯示的三列流量數據進行排序;
按<根據左邊的本機名或IP排序;
按>根據遠端目標主機的主機名或IP排序;
按o切換是否固定只顯示當前的連接;
按f可以編輯過濾代碼,這是翻譯過來的說法,我還沒用過這個!
按!可以使用shell命令,這個沒用過!沒搞明白啥命令在這好用呢!
按q退出監控。
二、ss
1.簡介
用來顯示處於活動狀態的套接字信息。ss命令可以用來獲取socket統計信息,它可以顯示和netstat類似的內容。但ss的優勢在於它能夠顯示更多更詳細的有關TCP和連接狀態的信息,而且比netstat更快速更高效,特別當服務器的socket數量變得非常大的時候,更顯SS得優勢。
2.安裝:重點
ss 命令利用到了 TCP 協議棧中 tcp_diag。tcp_diag 是一個用於分析統計的模塊,屬於Linux內核自帶的,然而想ifconfig命令就不是內核自帶的,需要額外安裝軟件包。
3.參數說明
3.1官方參數:
-h, --help this message
-V, --version output version information
-n, --numeric don‘t resolve service names
-r, --resolve resolve host names
-a, --all display all sockets
-l, --listening display listening sockets
-o, --options show timer information
-e, --extended show detailed socket information
-m, --memory show socket memory usage
-p, --processes show process using socket
-i, --info show internal TCP information
-s, --summary show socket usage summary
-b, --bpf show bpf filter socket information
-E, --events continually display sockets as they are destroyed
-Z, --context display process SELinux security contexts
-z, --contexts display process and socket SELinux security contexts
-N, --net switch to the specified network namespace name
-4, --ipv4 display only IP version 4 sockets
-6, --ipv6 display only IP version 6 sockets
-0, --packet display PACKET sockets
-t, --tcp display only TCP sockets
-S, --sctp display only SCTP sockets
-u, --udp display only UDP sockets
-d, --dccp display only DCCP sockets
-w, --raw display only RAW sockets
-x, --unix display only Unix domain sockets
--vsock display only vsock sockets
-f, --family=FAMILY display sockets of type FAMILY
FAMILY := {inet|inet6|link|unix|netlink|vsock|help}
-K, --kill forcibly close sockets, display what was closed
-H, --no-header Suppress header line
-A, --query=QUERY, --socket=QUERY
QUERY := {all|inet|tcp|udp|raw|unix|unix_dgram|unix_stream|unix_seqpacket|packet|netlink|vsock_stream|vsock_dgram}[,QUERY]
-D, --diag=FILE Dump raw information about TCP sockets to FILE
-F, --filter=FILE read filter information from FILE
3.2 常用參數
-h:顯示幫助信息;
-V:顯示指令版本信息;
-n:不解析服務名稱,以數字方式顯示;
-a:顯示所有的套接字;
-l:顯示處於監聽狀態的套接字;
-o:顯示計時器信息;
-m:顯示套接字的內存使用情況;
-p:顯示使用套接字的進程信息;
-i:顯示內部的TCP信息;
-4:只顯示ipv4的套接字;
-6:只顯示ipv6的套接字;
-t:只顯示tcp套接字;
-u:只顯示udp套接字;
-d:只顯示DCCP套接字;
-w:僅顯示RAW套接字;
-x:僅顯示UNIX域套接字。
3.3實例:顯示socket摘要
[root@leo ~]# ss -t -a
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:ssh *:*
LISTEN 0 100 127.0.0.1:smtp *:*
ESTAB 0 52 192.168.116.128:ssh 192.168.116.1:60008
LISTEN 0 128 :::ssh :::*
LISTEN 0 100 ::1:smtp :::*
[root@leo ~]# ss -pl #正在使用的socket
三、vnstat
1.簡介
vnstat是一個應用於Linux或BSD平臺,對網卡流量做監控。 因為並非是基於網絡包嗅探的方式而是基於/proc的分析。現在vnStat已經有出vnstat PHP frontend 擴展了,可以以PHP腳本的形式直接調用vnStat監測的數據。
2.快速安裝[root@leo ~]# yum install -y vnstat
3.說明
3.1官方參數
-q, --query query database
-h, --hours show hours
-d, --days show days
-m, --months show months
-w, --weeks show weeks
-t, --top10 show top 10 days
-s, --short use short output
-u, --update update database
-i, --iface select interface (default: eth0)
-?, --help short help
-v, --version show version
-tr, --traffic calculate traffic
-ru, --rateunit swap configured rate unit
-l, --live show transfer rate in real time
3.2 常用參數
vnstat -i eth0 -l #實時流量情況
vnstat -i eth0 -h #按小時查詢流量情況
vnstat -i eth0 -d #按天數查詢流量情況
vnstat -i eth0 -m #按月數查詢流量情況
vnstat -i eth0 -w #按周數查詢流量情況
vnstat -i eth0 -t #查詢TOP10流量情況
3.3 示例:實時顯示接口流量情況
[root@leo ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.116.128 netmask 255.255.255.0 broadcast 192.168.116.255
inet6 fe80::20c:29ff:fe49:de1f prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:49:de:1f txqueuelen 1000 (Ethernet)
RX packets 12328 bytes 13529530 (12.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4200 bytes 431348 (421.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@leo ~]# vnstat -i ens33 -l
Monitoring ens33... (press CTRL-C to stop)
rx: 0 kbit/s 0 p/s tx: 1 kbit/s 0 p/s
rx: 1 kbit/s 1 p/s tx: 1 kbit/s 1 p/s
rx: 0 kbit/s 0 p/s tx: 1 kbit/s 0 p/s
四、top
1.簡介
實時動態地查看系統的整體運行情況,是一個綜合了多方信息監測系統性能和運行信息的實用工具。通過top命令所提供的互動式界面,用熱鍵可以管理。
2.安裝
內核自帶,iotop需要通過安裝使用。
3.說明
3.1官方參數:top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]
3.2 常用參數解析:
-b:以批處理模式操作;
-c:顯示完整的治命令;
-d:屏幕刷新間隔時間;
-I:忽略失效過程;
-s:保密模式;
-S:累積模式;
-i<時間>:設置間隔時間;
-u<用戶名>:指定用戶名;
-p<進程號>:指定進程;
-n<次數>:循環顯示的次數。
3.3 參數交互(進入top界面後使用)
h:顯示幫助畫面,給出一些簡短的命令總結說明;
k:終止一個進程;
i:忽略閑置和僵死進程,這是一個開關式命令;
q:退出程序;
r:重新安排一個進程的優先級別;
S:切換到累計模式;
s:改變兩次刷新之間的延遲時間(單位為s),如果有小數,就換算成ms。輸入0值則系統將不斷刷新,默認值是5s;
f或者F:從當前顯示中添加或者刪除項目;
o或者O:改變顯示項目的順序;
l:切換顯示平均負載和啟動時間信息;
m:切換顯示內存信息;
t:切換顯示進程和CPU狀態信息;
c:切換顯示命令名稱和完整命令行;
M:根據駐留內存大小進行排序;
P:根據CPU使用百分比大小進行排序;
T:根據時間/累計時間進行排序;
w:將當前設置寫入~/.toprc文件中。
3.4 界面說明
[root@leo ~]# top
top - 11:22:17 up 45 min, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 122 total, 1 running, 121 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.1 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 3863568 total, 3317288 free, 160336 used, 385944 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 3426700 avail Mem
說明:
top - 11:22:17[當前系統時間],
up 45 min [系統已經運行45分],
1 user[用戶登錄數量],
load average: 0.00, 0.01, 0.05[系統負載時間段記錄]
Tasks: 122 total[總進程數],
1 running[正在運行的進程數],
121 sleeping[睡眠的進程數],
0 stopped[停止的進程數],
0 zombie[凍結進程數],
%Cpu(s): 0.1 us[用戶空間占用CPU百分比],
0.1 sy[內核空間占用CPU百分比],
0.0 ni[用戶進程空間內改變過優先級的進程占用CPU百分比],
99.8 id[空閑CPU百分比],
0.0 wa[等待輸入輸出的CPU時間百分比],
0.0 hi[],
0.0 si[],
0.0 st[],
KiB Mem : 3863568 total[物理內存總量],
3317288 free[空閑內存總量],
160336 used[使用的物理內存總量],
385944 buff/cache[用作內核緩存的內存量]
KiB Swap: 2097148 total[交換區總量],
2097148 free[空閑交換區總量],
0 used[使用的交換區總量],
3426700 avail Mem[緩沖的交換區總量],
五、Ping
1.簡介
Ping是Windows、Unix和Linux系統下的一個命令。ping也屬於一個通信協議,是TCP/IP協議的一部分。利用“ping”命令可以檢查網絡是否連通,可以很好地幫助我們分析和判定網絡故障。
2.安裝
內核自帶
3.說明
3.1 官方參數
Usage: ping [-aAbBdDfhLnOqrRUvV64] [-c count] [-i interval] [-I interface]
[-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
[-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
[-w deadline] [-W timeout] [hop1 ...] destination
Usage: ping -6 [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]
[-l preload] [-m mark] [-M pmtudisc_option]
[-N nodeinfo_option] [-p pattern] [-Q tclass] [-s packetsize]
[-S sndbuf] [-t ttl] [-T timestamp_option] [-w deadline]
[-W timeout] destination
3.2 常用參數
-d:使用Socket的SO_DEBUG功能;
-c<完成次數>:設置完成要求回應的次數;
-f:極限檢測;
-i<間隔秒數>:指定收發信息的間隔時間;
-I<網絡界面>:使用指定的網絡界面送出數據包;
-l<前置載入>:設置在送出要求信息之前,先行發出的數據包;
-n:只輸出數值;
-p<範本樣式>:設置填滿數據包的範本樣式;
-q:不顯示指令執行過程,開頭和結尾的相關信息除外;
-r:忽略普通的Routing Table,直接將數據包送到遠端主機上;
-R:記錄路由過程;
-s<數據包大小>:設置數據包的大小;
-t<存活數值>:設置存活數值TTL的大小;
-v:詳細顯示指令的執行過程。
3.3實例:發送報文到目的主機
[root@leo ~]# ping www.baidu.com
PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=1 ttl=128 time=7.18 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=2 ttl=128 time=8.00 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=3 ttl=128 time=7.43 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=4 ttl=128 time=7.60 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=5 ttl=128 time=8.16 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=6 ttl=128 time=8.31 ms
^C
--- www.a.shifen.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5010ms
rtt min/avg/max/mdev = 7.184/7.785/8.311/0.411 ms
[root@leo ~]#
六、lsof
1.簡介
用於查看你進程開打的文件,打開文件的進程,進程打開的端口(TCP、UDP)。找回/恢復刪除的文件。是十分方便的系統監視工具,因為lsof命令需要訪問核心內存和各種文件,所以需要root用戶執行。
在linux環境下,任何事物都以文件的形式存在,通過文件不僅僅可以訪問常規數據,還可以訪問網絡連接和硬件。所以如傳輸控制協議 (TCP) 和用戶數據報協議 (UDP) 套接字等,系統在後臺都為該應用程序分配了一個文件描述符,無論這個文件的本質如何,該文件描述符為應用程序與基礎操作系統之間的交互提供了通用接口。
2.快速安裝[root@leo ~]# yum install -y lsof
3.說明
3.1官方參數
-?|-h list help -a AND selections (OR) -b avoid kernel blocks
-c c cmd c ^c /c/[bix] +c w COMMAND width (9) +d s dir s files
-d s select by FD set +D D dir D tree *SLOW?* +|-e s exempt s *RISKY*
-i select IPv[46] files -K list tasKs (threads) -l list UID numbers
-n no host names -N select NFS files -o list file offset
-O no overhead *RISKY* -P no port names -R list paRent PID
-s list file size -t terse listing -T disable TCP/TPI info
-U select Unix socket -v list version info -V verbose search
+|-w Warnings (+) -X skip TCP&UDP* files -Z Z context [Z]
-- end option scan
+f|-f +filesystem or -file names +|-f[gG] flaGs
-F [f] select fields; -F? for help
+|-L [l] list (+) suppress (-) link counts < l (0 = all; default = 0)
+m [m] use|create mount supplement
+|-M portMap registration (-) -o o o 0t offset digits (8)
-p s exclude(^)|select PIDs -S [t] t second stat timeout (15)
-T qs TCP/TPI Q,St (s) info
-g [s] exclude(^)|select and print process group IDs
-i i select by IPv[46] address: [46][proto][@host|addr][:svc_list|port_list]
+|-r [t[m<fmt>]] repeat every t seconds (15); + until no files, - forever.
An optional suffix to t is m<fmt>; m must separate t from <fmt> and
<fmt> is an strftime(3) format for the marker line.
-s p:s exclude(^)|select protocol (p = TCP|UDP) states by name(s).
-u s exclude(^)|select login|UID set s
-x [fl] cross over +d|+D File systems or symbolic Links
3.2 常用參數
-a:列出打開文件存在的進程;
-c<進程名>:列出指定進程所打開的文件;
-g:列出GID號進程詳情;
-d<文件號>:列出占用該文件號的進程;
+d<目錄>:列出目錄下被打開的文件;
+D<目錄>:遞歸列出目錄下被打開的文件;
-n<目錄>:列出使用NFS的文件;
-i<條件>:列出符合條件的進程。(4、6、協議、:端口、 @ip )
-p<進程號>:列出指定進程號所打開的文件;
-u:列出UID號進程詳情;
-h:顯示幫助信息;
-v:顯示版本信息。
3.3 實例
[root@leo ~]# lsof |head -n 10
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root cwd DIR 253,0 224 64 /
systemd 1 root rtd DIR 253,0 224 64 /
systemd 1 root txt REG 253,0 1612152 50692855 /usr/lib/systemd/systemd
systemd 1 root mem REG 253,0 20112 34479 /usr/lib64/libuuid.so.1.3.0
systemd 1 root mem REG 253,0 261456 34481 /usr/lib64/libblkid.so.1.1.0
systemd 1 root mem REG 253,0 90664 34241 /usr/lib64/libz.so.1.2.7
systemd 1 root mem REG 253,0 157424 34472 /usr/lib64/liblzma.so.5.2.2
systemd 1 root mem REG 253,0 23968 34508 /usr/lib64/libcap-ng.so.0.0.0
systemd 1 root mem REG 253,0 19896 34292 /usr/lib64/libattr.so.1.1.0
[root@leo ~]#
解釋:
COMMAND:進程的名稱
PID:進程標識符
PPID:父進程標識符(需要指定-R參數)
USER:進程所有者
PGID:進程所屬組
FD:文件描述符,應用程序通過文件描述符識別該文件。
TYPE:文件類型
DEVICE:指定磁盤名稱
SIZE/OFF:文件大小
NODE:索引節點(文件在磁盤上的標識)
NAME:文件的確切名稱
七、tcpdump
1.簡介
一款sniffer工具,它可以打印所有經過網絡接口的數據包的頭信息,也可以使用-w選項將數據包保存到文件中,方便以後分析。
2.快速安裝
[root@leo ~]# yum install -y tcpdump
3.說明
3.1 官方參數
tcpdump [-aAbdDefhHIJKlLnNOpqStuUvxX#] [ -B size ] [ -c count ]
[ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
[ -i interface ] [ -j tstamptype ] [ -M secret ] [ --number ]
[ -Q|-P in|out|inout ]
[ -r file ] [ -s snaplen ] [ --time-stamp-precision precision ]
[ --immediate-mode ] [ -T type ] [ --version ] [ -V file ]
[ -w file ] [ -W filecount ] [ -y datalinktype ] [ -z postrotate-command ]
[ -Z user ] [ expression ]
3.2 常用參數
-a:嘗試將網絡和廣播地址轉換成名稱;
-c<數據包數目>:收到指定的數據包數目後,就停止進行傾倒操作;
-d:把編譯過的數據包編碼轉換成可閱讀的格式,並傾倒到標準輸出;
-dd:把編譯過的數據包編碼轉換成C語言的格式,並傾倒到標準輸出;
-ddd:把編譯過的數據包編碼轉換成十進制數字的格式,並傾倒到標準輸出;
-e:在每列傾倒資料上顯示連接層級的文件頭;
-f:用數字顯示網際網絡地址;
-F<表達文件>:指定內含表達方式的文件;
-i<網絡界面>:使用指定的網絡截面送出數據包;
-l:使用標準輸出列的緩沖區;
-n:不把主機的網絡地址轉換成名字;
-N:不列出域名;
-O:不將數據包編碼最佳化;
-p:不讓網絡界面進入混雜模式;
-q :快速輸出,僅列出少數的傳輸協議信息;
-r<數據包文件>:從指定的文件讀取數據包數據;
-s<數據包大小>:設置每個數據包的大小;
-S:用絕對而非相對數值列出TCP關聯數;
-t:在每列傾倒資料上不顯示時間戳記;
-tt: 在每列傾倒資料上顯示未經格式化的時間戳記;
-T<數據包類型>:強制將表達方式所指定的數據包轉譯成設置的數據包類型;
-v:詳細顯示指令執行過程;
-vv:更詳細顯示指令執行過程;
-x:用十六進制字碼列出數據包資料;
-w<數據包文件>:把數據包數據寫入指定的文件。
3.3實例:
3.3.1直接監控第一個在網絡接口流過的數據包
[root@leo ~]# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bluetooth0, link-type BLUETOOTH_HCI_H4_WITH_PHDR (Bluetooth HCI UART transport layer plus pseudo-header), capture size 262144 bytes
3.3.2監控指定主機端口的數據包
[root@leo ~]# tcpdump -i ens33
八、nc
1.簡介
netcat命令的簡稱,都是用來設置路由器。
2.快速安裝[root@leo ~]# yum install nc
3.說明
3.1 官方參數
-4 Use IPv4 only
-6 Use IPv6 only
-U, --unixsock Use Unix domain sockets only
-C, --crlf Use CRLF for EOL sequence
-c, --sh-exec <command> Executes the given command via /bin/sh
-e, --exec <command> Executes the given command
--lua-exec <filename> Executes the given Lua script
-g hop1[,hop2,...] Loose source routing hop points (8 max)
-G <n> Loose source routing hop pointer (4, 8, 12, ...)
-m, --max-conns <n> Maximum <n> simultaneous connections
-h, --help Display this help screen
-d, --delay <time> Wait between read/writes
-o, --output <filename> Dump session data to a file
-x, --hex-dump <filename> Dump session data as hex to a file
-i, --idle-timeout <time> Idle read/write timeout
-p, --source-port port Specify source port to use
-s, --source addr Specify source address to use (doesn‘t affect -l)
-l, --listen Bind and listen for incoming connections
-k, --keep-open Accept multiple connections in listen mode
-n, --nodns Do not resolve hostnames via DNS
-t, --telnet Answer Telnet negotiations
-u, --udp Use UDP instead of default TCP
--sctp Use SCTP instead of default TCP
-v, --verbose Set verbosity level (can be used several times)
-w, --wait <time> Connect timeout
-z Zero-I/O mode, report connection status only
--append-output Append rather than clobber specified output files
--send-only Only send data, ignoring received; quit on EOF
--recv-only Only receive data, never send anything
--allow Allow only given hosts to connect to Ncat
--allowfile A file of hosts allowed to connect to Ncat
--deny Deny given hosts from connecting to Ncat
--denyfile A file of hosts denied from connecting to Ncat
--broker Enable Ncat‘s connection brokering mode
--chat Start a simple Ncat chat server
--proxy <addr[:port]> Specify address of host to proxy through
--proxy-type <type> Specify proxy type ("http" or "socks4" or "socks5")
--proxy-auth <auth> Authenticate with HTTP or SOCKS proxy server
--ssl Connect or listen with SSL
--ssl-cert Specify SSL certificate file (PEM) for listening
--ssl-key Specify SSL private key (PEM) for listening
--ssl-verify Verify trust and domain name of certificates
--ssl-trustfile PEM file containing trusted SSL certificates
--ssl-ciphers Cipherlist containing SSL ciphers to use
--version Display Ncat‘s version information and e
3.2 常用參數
-g<網關>:設置路由器躍程通信網關,最多設置8個;
-G<指向器數目>:設置來源路由指向器,其數值為4的倍數;
-h:在線幫助;
-i<延遲秒數>:設置時間間隔,以便傳送信息及掃描通信端口;
-l:使用監聽模式,監控傳入的資料;
-n:直接使用ip地址,而不通過域名服務器;
-o<輸出文件>:指定文件名稱,把往來傳輸的數據以16進制字碼傾倒成該文件保存;
-p<通信端口>:設置本地主機使用的通信端口;
-r:指定源端口和目的端口都進行隨機的選擇;
-s<來源位址>:設置本地主機送出數據包的IP地址;
-u:使用UDP傳輸協議;
-v:顯示指令執行過程;
-w<超時秒數>:設置等待連線的時間;
-z:使用0輸入/輸出模式,只在掃描通信端口時使用。
3.3 實例
參數:
主機:指定主機的IP地址或主機名稱;
端口號:可以是單個整數或者是一個範圍。
端口掃描:
[root@leo ~]# nc -v -w 1 192.168.116.128 -z 1-10
192.168.116.128 是要監控的服務器IP
九、nethogs
1.簡介
一個開源的命令行工具(類似於Linux的top命令),用來按進程或程序實時統計網絡帶寬使用率。
2.快速安裝[root@leo ~]# yum install nethogs -y
3.說明
3.1 官方參數
usage: nethogs [-V] [-h] [-b] [-d seconds] [-v mode] [-c count] [-t] [-p] [-s] [device [device [device ...]]]
-V : prints version.
-h : prints this help.
-b : bughunt mode - implies tracemode.
-d : delay for update refresh rate in seconds. default is 1.
-v : view mode (0 = KB/s, 1 = total KB, 2 = total B, 3 = total MB). default is 0.
-c : number of updates. default is 0 (unlimited).
-t : tracemode.
-p : sniff in promiscious mode (not recommended).
-s : sort output by sent column.
-a : monitor all devices, even loopback/stopped ones.
device : device(s) to monitor. default is all interfaces up and running excluding loopback
3.2 常用參數1(非交互)
-d : 刷新間隔
-h : 幫助
-p : promiscious 模式
-t : trace模式
-V : 版本
3.3 常用參數2(交互式)
m : 修改單位
r : 按流量排序
s : 按發送流量排序
q : 退出命令提示符
3.4 實例
監控網絡帶寬;[root@leo ~]# nethogs ens33
改變刷新頻率:[root@leo ~]# nethogs ens33 -d 5
十、nslookup
1.簡介
常用域名查詢工具,就是查DNS信息用的命令。
nslookup4有兩種工作模式,即“交互模式”和“非交互模式”。在“交互模式”下,用戶可以向域名服務器查詢各類主機、域名的信息,或者輸出域名中的主機列表。而在“非交互模式”下,用戶可以針對一個主機或域名僅僅獲取特定的名稱或所需信息。
2.快速安裝[root@leo ~]# yum install -y bind-utils
3.2 參數說明-sil:不顯示任何警告信息。
3.3 實例
[root@leo ~]# nslookup www.baidu.com
Server: 192.168.116.2
Address: 192.168.116.2#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 14.215.177.38
Name: www.a.shifen.com
Address: 14.215.177.39
[root@leo ~]#
基礎運維:十大得心應手的網絡管理命令