Linux 基礎教程 27-ss和ip命令

来源:https://www.cnblogs.com/surpassme/archive/2018/07/23/9357470.html
-Advertisement-
Play Games

什麼是netstat     在Linux系統中輸入 man netstat ,顯示的結果如下所示:     從上面可以看出netstat命令的主要功能為: 顯示網路連接信息 顯示路由表信息 顯示網卡統計信息 顯示無效的連接信息 顯示組播成員信息   ...


什麼是netstat

    在Linux系統中輸入 man netstat,顯示的結果如下所示:

netstat - Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships

    從上面可以看出netstat命令的主要功能為:

  • 顯示網路連接信息
  • 顯示路由表信息
  • 顯示網卡統計信息
  • 顯示無效的連接信息
  • 顯示組播成員信息

   當我們看完介紹往下的時候,會看到如下的提示信息:

This program is obsolete.  Replacement for netstat is ss.  Replacement for netstat -r is ip route.  Replacement for netstat -i is ip  -s  link.
Replacement for netstat -g is ip maddr.

    從上面這段話可以看到netstat已經不再維護被ssip命令所代替了。詳細代替命令如下所示:

01netstat替代方案.jpg

ss命令

    ss是Socket Statistics的縮寫,是用於統計socket信息。幾乎所有的Linux系統都會預設包含netstat命令,但並非所有的系統都會預設包含ss命令。netstat是net-tool的成員,而ss是iproute2的成員,如果出現無法使用ss命令時,可以使用

yum -y install iproute iproute-doc

進行安裝。iproute2是一套可以支持IPv4/IPv6網路且用於管理TCP/UDP/IP網路的軟體包,因此iproute2幾乎可以代替net-tool的軟體包。以下是對比結果:

用途 net-tool iproute2
地址和鏈路配置 ifconfig ip addr ,ip link
路由表 route ip route
arp表 arp ip neigh
VLAN vconfig ip link
隧道 iptunnel ip tunnel
組播 ipmaddr ip maddr
統計 netstat ss

基本語法

ss [選項] [參數]

常用選項參數如下所示:

選項 說明
-h,--help 顯示幫助信息
-V,--version 顯示版本信息
-n,--numeric 以數字形式顯示,不解析服務名稱
-r,--resolve 解析主機名稱和埠
-a,--all 顯示所有信息,包含監聽和非監聽的信息
-l,--listening 僅顯示監聽信息
-o,--options 顯示計時器信息
-e,--extended 顯示詳細的Socket信息
-m,--memore 顯示Socket的記憶體使用信息
-p,--processes 顯示使用Socket的進程信息
-i,--info 顯示TCP內部信息
-s,--summary 顯示Socket的使用概況
-4,--ipv4 僅顯示ipv4的Socket信息
-6,--ipv4 僅顯示ipv6的Socket信息
-t,--tcp 僅顯示TCP的Socket信息
-u,--udp 僅顯示UDP的Socket信息
-d,--dccp 僅顯示DCCP的Socket信息
-w,--raw 僅顯示RAW的Socket信息
-s,--sctp 僅顯示SCTP的Socket信息
-K,--kill 嘗試強制關閉Socket

示例

1.查看當前伺服器的網路連接信息

02ss-s.jpg

當伺服器有大量的Socket連接時,可以用來做巨集觀統計

2.查看所有打開的網路埠

03ss-l.jpg

ip命令

    ip命令用來顯示或配置Linux主機的路由、網路設備、策略路由和隧道。

基本語法

ip [選項] 對象 {命令 | 幫助}

常用選項參數如下所示:

選項 說明
-V,--Version 顯示版本信息
-h,--human 以易於讀取的方式輸出信息
-s,--statistics 顯示詳細的統計信息
-f,--family 指定使用的協議類型,協議類型主要有:inet,inet6,bridge,ipx, dnet,mpls,link ,如果未指定協議類型,則系統根據後面的參數自行決定所採用的協議類型
-4 --family inet的簡寫
-6 --family inet6的簡寫
-B --family bridge的簡寫
-0 --family link的簡寫
-o,--oneline 每條記錄單獨一行輸出
-r,--resolve 查詢DNS解析系統,使用主機名代替主機IP地址
-c,--color 對顯示的信息進行顏色標識
-t,--timestamp 增加時間戳
-ts,--tshort 與-t參數類似,以短時間形式顯示
-iec 以易於讀取的形式顯示速率信息,如1Ki=1024

    對象是要管理或獲取信息的對象,常用的對象如下所示:

對象 說明
address 設備上的協議(IPv4/IPv6)地址
l2tp IP上面的隧道(L2TPv3)
link 網路設備
maddress 多播地址
mroute 多播路由緩衝條目
route 路由表條目
rule 路由規則
tcp_metrics/tcpmetrics tcp轉發優先順序
tunnel IP上的隧道

   命令是用於指定對象上的操作行為,常見的命令如下所示:

命令 說明
add 增加操作
del 刪除操作
show/list 顯示操作
如果命令用戶沒有指定,則系統會自動指定操作行為,如show或list

示例

1.添加IP地址:

ip addr add 192.168.8.8/24 dev ens0

2.顯示IP地址

ip addr show
或
ip addr list
或
ip addr

3.刪除IP地址

ip addr del 192.168.8.8/24 dev ens0

4.啟用/禁用網卡

啟用網卡
ip link set ens0 up
禁用網卡
ip link set ens0 down

5.顯示路由信息

ip route show

6.增加路由信息

ip route add 192.168.8.8/24 via 192.168.8.1
via 192.168.8.1 後面是網關

7.設定網卡僅轉發

ip route add 192.168.8.8 dev ens0

8.刪除路由

ip route del 192.168.8.8/24 via 192.168.8.1
ip route del 192.168.8.8 dev ens0

9.指定預設網關

ip route add default via 192.168.8.1

預設網關作用很簡單明確,當一臺主機找不到匹配的轉發規則,則把數據轉發給預設網關,由該網關進行處理。

10.刪除預設網關

ip route del default

11.為不同的源IP指定路由選擇

   當一個主機有多個網卡且配置了多個IP的時候,對於不同網卡產生的網路數據包,則需要根據其源IP地址選擇不同的路由信息,如下所示:

ip route add 192.168.8.0/0 via 192.168.8.1 src 192.168.8.8

   上面這個命令的意思就是發到192.168.8.0/0網段的所有網路包,下一跳的路由器IP是192.168.8.1,包的源IP地址為:192.168.8.8

本文同步在微信訂閱號上發佈,如各位小伙伴們喜歡我的文章,也可以關註我的微信訂閱號:woaitest,或掃描下麵的二維碼添加關註:
MyQRCode.jpg


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • --> public class OtherConfigInfo : ConfigurationSection { /// /// 獲取配置信息 /// /// public static OtherConfigInfo GetConfig() { ... ...
  • 最近比較忙,博客很久沒更新了,很多博友問何時更新博文,因此,今天就花了點時間,寫了本篇文章,但願大家喜歡。 本篇文章不適合初學者,需要對ASP.NET MVC具有一定基礎。 本篇文章主要從ASP.NET MVC 基架角度去分析MVC框架是如何實現資源過濾,資源授權,感興趣的,歡迎閱讀。 相關文章,請 ...
  • 本篇介紹異常處理的知識。由於異常處理的技術應用並不複雜,本篇更多討論異常處理的一些理論知識,包括一些原則、約定和建議。 ...
  • 一、前言 畢業後入職現在的公司快有一個月了,公司主要的產品用的是C/S架構,再加上自己現在還在學習維護很老的delphi項目,還是有很多不情願的。之前實習時主要是做.NET的B/S架構的項目,主要還是用的那種傳統的開發模式,只有一個項目用到了Web API,自己負責後端的介面功能實現。既然現在沒辦法 ...
  • 直接上案例: 在Web Api通訊中,客戶端發送json數據,服務端反序列化json(json與某個類形成對應關係),在某些情況下,需要校驗其上傳的json是否合法。 服務端是使用Json.net(newtonsoft.json)進行反序列化。一般我們反序列化json為對象時代碼如下: json原型 ...
  • 決定認真從零開始寫一個Linux的學習過程,像我這麼偷懶的人能寫文字記錄已經很不容易了,希望不要半途而廢吧(拖走) 用多了Linux其實發現,要是哪天Linux和Windows能結合下就好了,簡單粗暴的Linux命令行加上Windows萬能的UI以及相容才是夢想中的系統啊,瓶瓶罐罐的東西真是討厭~~ ...
  • 基於Red Hat Enterprise Linux 7.5 Linux中的root就是存在於所有類UNIX系統中的超級用戶,持有最高管理許可權,能添加/刪除用戶、開關機、關閉或開啟硬體或者系統服務等,並且root的操作無法被阻擋。 Linux中root為什麼叫root,不是因為名字叫root,而是U ...
  • 我的 Ubuntu 鏡像是在「清華大學開源軟體鏡像網」下載的,版本號是16.04 下載一個ios文件,裝在虛擬機中就行了。 虛擬機用的 VMware Workstation 12, 註冊密鑰: 5A02H-AU243-TZJ49-GTC7K-3C61N AA39H-61W50-H8DCY-1MM79 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...