linux下列出所有連接到你的Server的IP地址

来源:http://www.cnblogs.com/movingcity/archive/2017/02/22/6428515.html
-Advertisement-
Play Games

linux下列出所有連接到你的Server的IP地址 最近要做一個檢查所有連接到主機的IP的腳本,google到一篇老外寫的文章 "《List all IP addresses connected to your Server》" 試了一下腳本結果好像可以。因為對linux瞭解很少,所以對這 行 腳 ...


linux下列出所有連接到你的Server的IP地址

最近要做一個檢查所有連接到主機的IP的腳本,google到一篇老外寫的文章

《List all IP addresses connected to your Server》

試了一下腳本結果好像可以。因為對linux瞭解很少,所以對這腳本各種參數和命令不太明白,正好這篇文章對腳本的描述很詳細,正好一邊翻譯一邊理解了。

下列是一個Unix命令,用來列出所有連接到主機80埠的IP地址。

netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head

輸出 - 全部按IP連接數從高到低排列

97 114.198.236.100
56 67.166.157.194
44 170.248.43.76
38 141.0.9.20
37 49.248.0.2
37 153.100.131.12
31 223.62.169.73
30 65.248.100.253
29 203.112.82.128
29 182.19.66.187

註:
This command is useful to detect if your server is under attack, and null route those IPs. Read this null route attacker IP story.

下麵來把這個有點長的命令打散:

1. netstat -tn 2>/dev/null

用 netstat 列出所有網路連接,包括進和出。

  1. -n -只顯示數字(IP地址和埠),不解析成名字。
  2. -t -只顯示TCP連接。

輸出

#Examples - 7 connections
tcp        0      0 64.91.*.*:80            114.198.236.100:12763       TIME_WAIT
tcp        0      0 64.91.*.*:80            175.136.226.244:51950       TIME_WAIT
tcp        0      0 64.91.*.*:80            175.136.226.244:51951       TIME_WAIT
tcp        0      0 64.91.*.*:23            202.127.210.2:14517         TIME_WAIT
tcp        0      0 64.91.*.*:80            149.238.193.121:65268       TIME_WAIT
tcp        0      0 64.91.*.*:80            114.198.236.100:44088       ESTABLISHED
tcp        0      0 64.91.*.*:80            175.136.226.244:51952       TIME_WAIT

2>/dev/null
重定位所有不必要的輸出流到/dev/null——一個專門用來獲取並清空所有輸出流的地方。(譯註:2是標準錯誤輸出,這段命令用來隱藏所有錯誤信息。)

2. grep :80

只顯示連接到主機80埠的IP地址。

tcp        0      0 64.91.*.*:80            114.198.236.100:12763       TIME_WAIT
tcp        0      0 64.91.*.*:80            175.136.226.244:51950       TIME_WAIT
tcp        0      0 64.91.*.*:80            175.136.226.244:51951       TIME_WAIT
tcp        0      0 64.91.*.*:80            149.238.193.121:65268       TIME_WAIT
tcp        0      0 64.91.*.*:80            114.198.236.100:44088       ESTABLISHED
tcp        0      0 64.91.*.*:80            175.136.226.244:51952       TIME_WAIT

3. awk ‘{print $5}’

使用 awk 來只顯示第5列的內容。

114.198.236.100:12763
175.136.226.244:51950
175.136.226.244:51951
149.238.193.121:65268
114.198.236.100:44088
175.136.226.244:51952

4. cut -d: -f1

使用 cut 來抽取內容。

  1. -d – 在-d選項後面緊挨著的文字將作為分隔符,預設是tab。
  2. -f – 指定顯示用分隔符進行分割後的列
114.198.236.100
175.136.226.244
175.136.226.244
149.238.193.121
114.198.236.100
175.136.226.244

5. sort | uniq -c | sort -nr

對列表進行排序,分組然後再次倒序排序。

sort

114.198.236.100
114.198.236.100
149.238.193.121
175.136.226.244
175.136.226.244
175.136.226.244

uniq -c – 分組。

2 114.198.236.100
1 149.238.193.121
3 175.136.226.244

sort -nr – 按數字倒序排列(大數在前)。

3 175.136.226.244
2 114.198.236.100
1 149.238.193.121

完成。

這是個可選項,用來顯示前10個結果。



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

-Advertisement-
Play Games
更多相關文章
  • 最近搭建了一套SQLServer2016 AlwaysOn。 筆者是採用修改各節點的hosts文件,以及修改電腦名的dns尾碼,來避免需要另外一臺DNS伺服器。 上面128,129,130三個IP屬於AlwaysOn的三個節點伺服器 IP100屬於可用性組偵聽器IP IP150屬於群集 途中遇到的 ...
  • 轉自:http://www.0791quanquan.com/news_keji/topic_816453/ 探索一:正負數問題 拿tinyint欄位來舉例,unsigned後,欄位的取值範圍是0-255,而signed的範圍是-128 - 127。 那麼如果我們在明確不需要負值存在的情況下,通常是 ...
  • 1:在進行count()統計某列的記錄數的時候,如果採用的NULL值,會別系統自動忽略掉,但是空值是會進行統計到其中的。 2: 判斷NULL 用IS NULL 或者 is not null,SQL 語句函數中可以使用ifnull()函數來進行處理,判斷空字元用=''或者 <>''來進行處理 3: 對 ...
  • 問題1: 解決方法: (該解決方法是設置為NAT模式) 問題2: 解決方法: 問題3: 設置虛擬機與系統時間同步問題 在安裝完CentOS系統後發現時間與現在時間相差8小時,這是由於我們在安裝系統的時選擇的時區是上海, 而CentOS預設bios時間是utc時間,所以時間相差了8小時。這個時候的bi ...
  • sed做為linux下的三劍客,自然功能強大,但是如果使用不當,反而適得其反,今天就因為這個命令採了很深坑,分析一下原因,以諫後來者。 情景回顧: 項目中使用的一個python爬蟲採用的是多線程併發爬取,輸入為一個存放url的文件,因為程式隨時可能停止,所以每次重啟程式的時候需要將以爬取過的url去 ...
  • 作者信息 作者: 彭東林 郵箱: [email protected] QQ: 405728433 軟體平臺 主機: Ubuntu14.04 64位版本 模擬器:Qemu-2.8.0 Linux內核版本: Linux-4.10 Busybox版本:busybox-1.24.2 工具鏈: gc ...
  • 序言 如果大家都愛裝逼,一般會偏愛使用安裝最小化的liunx系統,那麼你的系統就不帶圖形化的桌面功能,這樣對於一個想裝B的初學者來說,Liunx就是黑漆馬虎,一望無際的黑屏,黑屏,如何快速的對liunx系統有個較為全面基礎的認識呢?答:繼續往下讀,哈哈。 本篇目的就是讓大家對linux系統有個全面的 ...
  • 預設網卡名稱是 eno16777736 1、修改配置文件 ifcfg-eno16777736 將 NAME 和 DEVICE 修改為 eth0 重命名該文件 2、禁用該可預測命名規則 在 grup 文件裡面的 GRUB_CMDLINE_LINUX 變數添加 net.ifnames=0 biosdev ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...