您好,登錄后才能下訂單哦!
這篇文章主要介紹“linux中的網絡命令有哪些”,在日常操作中,相信很多人在linux中的網絡命令有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”linux中的網絡命令有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
Linux下內置了多種網絡命令:1、ping,用來測試TCP/IP網絡是否暢通或者測試網絡連接速度;2、telnet,用于登錄遠程主機、對遠程主機進行管理;3、netstat,用來打印Linux中網絡系統的狀態信息;4、ifconfig等。
本教程操作環境:linux5.9.8系統、Dell G3電腦。
Linux下有多種網絡命令,下面給大家分享一些常見網絡命令,
1、ping
ping 命令是用來測試TCP/IP 網絡是否暢通或者測試網絡連接速度的命令,對確定網絡是否正確連接,以及網絡連接的狀況十分有用。簡單的說,ping就是一個測試程序,如果ping運行正確,大體上就可以排除網絡訪問層、網卡、Modem的輸入輸出線路、電纜和路由器等存在的故障,從而縮小問題的范圍。
ping命令的原理是根據計算機唯一標示的IP 地址,當用戶給目的地址發送一個數據包時,對方就會返回一個同樣大小的數據包,根據返回的數據包用戶可以確定目的主機的存在,并初步判斷目的主機的操作系統。
(1)命令格式
ping ( 選項)目的地址
目的地址指的是被測計算機的IP 地址、主機名或者是域名。ping 命令包含12 個參數,所有參數都可以通過執行ping來查看。如下圖:
(2)實例
注:Linux下的ping命令和Windows下的ping命令不同,需要Ctrl+C來終止
(Linux和Windows下ping命令的區別)
(3)選項
-d:使用Socket的SO_DEBUG功能;
-c<完成次數>:設置完成要求回應的次數;
-f:極限檢測;
-i<間隔秒數>:指定收發信息的間隔時間;
-L<網絡界面>:使用指定的網絡界面送出數據包;
-l<前置載入>:設置在送出要求信息之前,先行發出的數據包;
-n:只輸出數值;
-p<范本樣式>:設置填滿數據包的范本樣式;
-q:不顯示指令執行過程,開頭和結尾的相關信息除外;
-r:忽略普通的Routing Table,直接將數據包送到遠端主機上;
-R:記錄路由過程;
-s<數據包大小>:設置數據包的大小;
-v:詳細顯示指令的執行過程。
-t<存活數值>:設置存活數值TTL的大小
說一下其中的-c、 -i參數
其中 –c count 次數,也就是ping的次數;-i interval 間隔 ,每次ping之間的時間空格
2、telnet
telnet命令用于登錄遠程主機,對遠程主機進行管理。telnet因為采用明文傳送報文,安全性不好,很多Linux服務器都不開放telnet服務,而改用更安全的ssh方式了。
(1)命令格式:
telnet (選項) (參數)
(2)實例
(3)參數
遠程主機:指定要登錄進行管理的遠程主機
端口:指定TELNET協議使用的端口號
(4)選項
-8:允許使用8位字符資料,包括輸入與輸出;
-a:嘗試自動登入遠端系統;
-b<主機別名>:使用別名指定遠端主機名稱;
-c:不讀取用戶專屬目錄里的.telnetrc文件;
-d:啟動排錯模式;
-e<脫離字符>:設置脫離字符;
-E:濾除脫離字符;
-f:此參數的效果和指定”-F”參數相同;
-F:使用Kerberos V5認證時,加上此參數可把本地主機的認證數據上傳到遠端主機;
-k<域名>:使用Kerberos認證時,加上此參數讓遠端主機采用指定的領域名,而非該主機的域名;
-K:不自動登入遠端主機;
-l<用戶名稱>:指定要登入遠端主機的用戶名稱;
-L:允許輸出8位字符資料;
-n<記錄文件>:指定文件記錄相關信息;
-r:使用類似rlogin指令的用戶界面;
-S<服務類型>:設置telnet連線所需的ip TOS信息;
-x:假設主機有支持數據加密的功能,就使用它;
-X<認證形態>:關閉指定的認證形態。
3、netstat
netstat命令用來打印Linux中網絡系統的狀態信息,可讓你得知整個Linux系統的網絡情況
(1)命令格式
netstat(選項)
(2)選項
-a或–all:顯示所有連線中的Socket;
-A<網絡類型>或–<網絡類型>:列出該網絡類型連線中的相關地址;
-c或–continuous:持續列出網絡狀態;
-C或–cache:顯示路由器配置的快取信息;
-e或–extend:顯示網絡其他相關信息;
-F或–fib:顯示FIB;
-g或–groups:顯示多重廣播功能群組組員名單;
-h或–help:在線幫助;
-i或–interfaces:顯示網絡界面信息表單;
-l或–listening:顯示監控中的服務器的Socket;
-M或–masquerade:顯示偽裝的網絡連線;
-n或–numeric:直接使用ip地址,而不通過域名服務器;
-N或–netlink或–symbolic:顯示網絡硬件外圍設備的符號連接名稱;
-o或–timers:顯示計時器;
-p或–programs:顯示正在使用Socket的程序識別碼和程序名稱;
-r或–route:顯示Routing Table;
-s或–statistice:顯示網絡工作信息統計表;
-t或–tcp:顯示TCP傳輸協議的連線狀況;
-u或–udp:顯示UDP傳輸協議的連線狀況;
-v或–verbose:顯示指令執行過程;
-V或–version:顯示版本信息;
-w或–raw:顯示RAW傳輸協議的連線狀況;
-x或–unix:此參數的效果和指定”-A unix”參數相同;
–ip或–inet:此參數的效果和指定”-A inet”參數相同
(3)實例
netstat -a //列出所有端口 netstat -at //列出所有tcp端口 netstat -au //列出所有udp端口
在這里顯示所有的TCP端口
netstat -l //只顯示監聽端口 netstat -lt //只列出所有監聽 tcp 端口 netstat -lu //只列出所有監聽 udp 端口
和上面的圖相比,可以看到只顯示出了監聽狀態的TCP端口
4、ifconfig
ifconfig命令被用于配置和顯示Linux內核中網絡接口的網絡參數。用ifconfig命令配置的網卡信息,在網卡重啟后機器重啟后,配置就不存在。要想將上述的配置信息永遠的存的電腦里,那就要修改網卡的配置文件了。
(1)命令格式
ifconfig(參數)
(2)實例
eth0表示第一塊網卡,可以看到這個網卡的信息
HWaddr表示網卡的物理地址即MAC地址,可以看到目前這個網卡的MAC地址是:00:0C:29:A7:C0:6C
inet addr用來表示網卡的IP地址,此網卡的IP地址是:192.168.1.106
廣播地址Bcast:192.168.1.255
掩碼地址Mask:255.255.255.0
lo是表示主機的回環地址,這個一般是用來測試一個網絡程序,但又不想讓局域網或外網的用戶能夠查看,只能在此臺主機上運行和查看所用的網絡接口。
(3)參數
add<地址>:設置網絡設備IPv6的ip地址
del<地址>:刪除網絡設備IPv6的IP地址
down:關閉指定的網絡設備
io_addr< I/O地址>:設置網絡設備的I/O地址
irq< IRQ地址>:設置網絡設備的IRQ;
media<網絡媒介類型>:設置網絡設備的媒介類型;
mem_start<內存地址>:設置網絡設備在主內存所占用的起始地址;
metric<數目>:指定在計算數據包的轉送次數時,所要加上的數目;
mtu<字節>:設置網絡設備的MTU;
netmask<子網掩碼>:設置網絡設備的子網掩碼;
tunnel<地址>:建立IPv4與IPv6之間的隧道通信地址;
up:啟動指定的網絡設備;
-broadcast<地址>:將要送往指定地址的數據包當成廣播數據包來處理;
-pointopoint<地址>:與指定地址的網絡設備建立直接連線,此模式具有保密功能;
-promisc:關閉或啟動指定網絡設備的promiscuous模式;
IP地址:指定網絡設備的IP地址;
網絡設備:指定網絡設備的名稱。
5、route
route命令用來顯示并設置Linux內核中的網絡路由表,route命令設置的路由主要是靜態路由。
要注意的是,直接在命令行下執行route命令來添加路由,不會永久保存,當網卡重啟或者機器重啟之后,該路由就失效了;可以在*/etc/rc.local中添加route命令來保證該路由設置永久有效。
(1)命令格式
route(選項)(參數)
(2)選項
-A:設置地址類型;
-C:打印將Linux核心的路由緩存;
-v:詳細信息模式;
-n:不執行DNS反向查找,直接顯示數字形式的IP地址;
-e: netstat格式顯示路由表;
-net:到一個網絡的路由表;
-host:到一個主機的路由表。
(3)參數
Add:增加指定的路由記錄
Del:刪除指定的路由記錄
Target:目的網絡或目的主機
gw:設置默認網關
mss:設置TCP的最大區塊長度(MSS),單位為MB
window:指定通過路由表的TCP連接的TCP窗口大小
dev:路由記錄所表示的網絡接口
(4)實例
顯示當前路由,從圖中可以看出加了選項-n的變化
刪除和添加設置默認網關
6、arp
arp命令用于操作主機arp緩沖區,可以顯示arp緩沖區的所有條目、刪除指定條目或增加靜態IP地址與MAC地址的對應關系
(1)命令格式
arp(選項)(參數)
(2)選項
-a<主機>:顯示arp緩沖區的所有條目
-H<地址類型>:指定arp指令使用的地址類型
-d<主機>:從arp緩沖區中刪除指定主機的arp條目
-D:使用指定接口的硬件地址
-e:以Linux的顯示風格顯示arp緩沖區中的條目
-i<接口>:指定要操作arp緩沖區的網絡接口
-s<主機><硬件地址>:設置指定主機的IP地址與MAC地址的靜態映射
-n:以數字方式顯示arp緩沖區中的條目
-v:顯示詳細的arp緩沖區條目,包括緩沖區條目的統計信息
-f<文件>:設置主機的IP地址與MAC地址的靜態映射
(3)參數
主機:查詢arp緩沖區中指定主機的arp條目。
(4)實例
7、traceroute
traceroute命令用于追蹤數據包在網絡上傳輸時的全部路徑,它默認發送的數據包大小是40字節
通過traceroute我們可以知道信息從你的計算機到互聯網另一端的主機是走的什么路徑。當然每次數據包由某一同樣的出發點(source)到達某一同樣的目的地(destination)走的路徑可能會不一樣,但基本上來說大部分時候所走的路由是相同的。
traceroute通過發送小的數據包到目的設備直到其返回,來測量其需要多長時間。一條路徑上的每個設備traceroute要測3次。輸出結果中包括每次測試的時間(ms)和設備的名稱(如有的話)及其ip地址
(1)命令格式
traceroute(選項)(參數)
(2)選項
-d:使用Socket層級的排錯功能
-f<存活時間>:設置第一個檢測數據包的存活數值TTL的大小
-F:設置勿離斷位
-g<網關>:設置來源路由網關,最多可設置8個
-i<網絡界面>:使用指定的網絡界面送出數據包
-l:使用ICMP回應取代UDP資料信息
-m<存活數值>:設置檢測數據包的最大存活數值TTL的大小
-n:直接使用IP地址而非主機名
-p<通信端口>:設置UDP傳輸協議的通信端口
-r:忽略普通的Routing Table,直接將數據包送到遠端主機上
-s<來源地址>:設置本地主機送出數據包的TOS數值
-v:詳細顯示指令的執行過程
-w<超時秒數>:設置等待遠端主機回報的時間
-x:開啟或關閉數據包的正確性檢驗
(3)參數
主機:指定目的主機IP地址或主機名
(4)實例
從圖中可以看出記錄按序列號從1開始,每個紀錄就是一跳 ,每跳表示一個網關,我們看到每行有三個時間,單位是ms,其實就是-q的默認參數。探測數據包向每個網關發送三個數據包后,網關響應后返回的時間;
在后面一部分我們會看到有一些行是以星號表示的。出現這樣的情況,可能是防火墻封掉了ICMP的返回信息,所以我們得不到什么相關的數據包返回數據。
8、host
host命令是常用的分析域名查詢工具,可以檢測域名系統工作是否正常
(1)命令格式
host(選項)(參數)
(2)選項
-a:顯示詳細的DNS信息
-c<類型>:指定查詢類型,默認值為“IN”
-C:查詢指定主機的完整SOA記錄
-r:在查詢域名時,不使用遞歸的查詢方式
-t<類型>:指定查詢第域名信息類型
-v:顯示指令執行的詳細信息
-a:顯示詳細的DNS信息;
-w:如果域名服務器沒有給出應答信息,則一直等待,直到域名服務器給出應答
-W<時間>:指定域名查詢的最長時間,如果在指定時間內域名服務器沒有給出應答信息,則退出指令
-4:使用IPv4
-6:使用IPv6
(3)參數
主機:要查詢的主機信息
(4)實例
9、tcpdump
tcpdump命令是一款抓取數據包的工具,它可以打印所有經過網絡接口的數據包的頭信息,也可以使用-w選項將數據包保存到文件中,方便以后分析。
(1)命令格式
tcpdump(選項)
(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)實例
tcpdump:監視第一個網絡接口上流過的所有數據包(帶上-i選項,是監視指定網絡接口)
到此,關于“linux中的網絡命令有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。