首頁 後端開發 Python教學 python基础教程之udp端口扫描

python基础教程之udp端口扫描

Jun 06, 2016 am 11:29 AM
掃描

一、概述
任务描述:
开发一个程序,用于获取局域网中开启snmp服务的主机ip地址列表,并写入相应文件以便其它程序使用。
背景知识:
SNMP是基于UDP的,而且标准的SNMP服务使用161和162端口。
思路:
1、获取局域在线主机列表;
2、获取各个主机的snmp端口(比如161)开启状况;
3、以特定格式写入特定文件。
这里只实现前两步。

二、nmap实现
1、安装nmap
Linux平台(CentOS为例):

yum install nmap -y    
widows平台(下载地址):
http://nmap.org/download.html#windows

2、获取在线主机列表
以192.168.1.0/24网段为例:

nmap -sn 192.168.1.0/24  
或者指定ip范围扫描:

nmap -sn 192.168.1.1-254  
参数解释:
-sn: Ping扫描,只进行主机发现,不进行端口扫描。

3、获取主机端口开启状况
以192.168.1.100为例

nmap -p 161 -sU 192.168.1.100  
参数解释:

-p 161 : 扫描161端口  
-sU    : 进行UDP扫描   
nmap返回结果:

open            :   开放
closed          :   关闭
filtered        :   端口被防火墙IDS/IPS 屏蔽,无法确定其状态
unfiltered      :   端口没有被屏蔽,但是否开放需要进一步确定
open|filtered   :   端口是开放的或被屏蔽
closed|filtered :   端口是关闭的或被屏蔽
4、nmap捷径

扫描192.168.1.0/24网段的161端口如下: 
nmap -p 161 -sU 192.168.1.0/24  
三、python实现(借助python-nmap)
nmap的返回值有很多数据,需要自行写程序进行解析,比如对192.168.1.100的161端口进行扫描的结果:

Nmap scan report for 192.168.1.100
Host is up (0.00024s latency).
PORT    STATE  SERVICE
161/udp closed snmp
MAC Address: 10:BF:5A:6A:BA:48 (Unknown)
这里有个python开发的nmap解析库,原理是调用nmap命令,并对其结果进行解析,返回python能识别的数据结构:
名称 : python-nmap
url : http://xael.org/norman/python/python-nmap/python-nmap-0.1.4.tar.gz

示例(扫描局域网各个主机的snmp服务开启状况):

代码如下:


#! /usr/bin/python

import nmap
nm = nmap.PortScanner()
nm.scan(hosts='192.168.1.0/24', arguments='-p 161 -sU ')
hosts_list = [(x, nm[x][u'udp'][161]['state']) for x in nm.all_hosts()]
for host, status in hosts_list:
    print('{0}:{1}'.format(host, status))

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1247
24
Win10如何使用WindowsDefender對資料夾進行掃描。 Win10如何使用WindowsDefender對資料夾進行掃描。 Jul 10, 2023 pm 11:17 PM

Windows10有一個免費的防毒程序,叫做WindowsDefender,它提供了即時保護,可以在電腦上進行掃描。這也使您可以執行自訂掃描,從而可以指定特定的資料夾或磁碟機來掃描惡意軟體。因為你只需要掃描這個資料夾,所以掃描的時間會比掃描整台機器快很多。如下所示,我們為您的特定資料夾提供了兩個客製化掃描的方法。 Win10是如何使用WindowsDefender掃描資料夾中的惡意軟體。若要掃描個別資料夾及其子資料夾,最簡單的方式是右鍵點選該資料夾,然後選擇「使用WindowsDefender掃描

惠普印表機掃描怎麼掃描成一個pdf 惠普印表機掃描怎麼掃描成一個pdf Feb 19, 2024 am 10:06 AM

許多使用者使用惠普印表機掃描文件之後,想要直接掃描成一個pdf文件,但是不知道怎麼樣操作才能成功,只要在電腦中使用掃描器程式就可以了。惠普印表機掃描怎麼掃描成一個pdf:1、先開啟電腦上的掃描器程式。 2、然後在頁面設定中選擇「另存PDF」。 3、然後在右下角按「掃描」開始掃描第一個檔案。 4.完成之後,點左下角的「+」圖標,就可以增加新的掃描頁面。 5.就可以看到原本文件邊有新的掃描框。 7.最後完成之後,選擇「儲存」就可以儲存這些PDF檔案了。

網路易雲音樂怎麼掃描本地音樂_網易雲音樂掃描本地音樂教程 網路易雲音樂怎麼掃描本地音樂_網易雲音樂掃描本地音樂教程 Mar 25, 2024 pm 10:21 PM

1.開啟網易雲音樂,點選我的,點選本地音樂。 2、點選右上角的三個點。 3.點擊掃描本地音樂。 4.點選下方的掃描設定。 5.往左滑動過濾小於60秒的音訊檔案。 6.返回點擊全盤掃描,就可以掃描到全部的本地音樂的。

夸克二維碼怎麼掃 夸克二維碼怎麼掃 Feb 27, 2024 pm 04:10 PM

在夸克軟體中,豐富多樣的功能為用戶帶來了便利和樂趣,其中掃描功能特別受歡迎。透過掃描功能,使用者可以輕鬆掃描二維碼,無論是快速登入網站、新增好友,或是下載應用,都能一鍵完成。那麼,究竟該如何使用夸克二維碼的掃描功能呢,還不知道究竟該如何使用的玩家們千萬不容錯過,快來跟著本站小編為大家帶來的本文詳細了解一下吧。夸克二維碼怎麼掃答案:【夸克】-【三橫圖示】-【拍照掃描】。具體步驟:1、先打開夸克軟體,進入到首頁後我們點選右下角的【三橫圖示】;2、然後在我的頁面中往上滑動到頁面的下方找到【拍照掃描】

掃描出來的文件模糊怎麼處理 掃描出來的文件模糊怎麼處理 Jan 05, 2021 pm 03:09 PM

處理方法:1、在ps軟體中開啟要處理的掃描圖片;2、點擊頂部工具列的「濾鏡」-「銳利化」-「智慧銳利化」;3、在彈出的視窗中,根據需求選擇銳利化半徑,點選“確定”;4、點選“檔案”-“儲存為”,另存為檔案即可。

如何在PHP中使用二維碼掃描? 如何在PHP中使用二維碼掃描? Aug 19, 2023 pm 07:49 PM

如何在PHP中使用二維碼掃描?二維碼掃描在現代生活中已經變得非常常見。無論是支付寶、微信支付或其他各種應用,都可以透過掃描二維碼來進行快速的支付或資訊傳遞。在PHP中,我們也可以很方便地實現二維碼的掃描功能。本文將介紹如何使用PHP進行二維碼掃描,並提供對應的程式碼範例。首先,我們需要一個PHP的二維碼產生函式庫,這裡我們選擇使用"PHPQRCode"函式庫。

在 iPhone 的 Notes 應用程式中掃描列印和手寫筆記 在 iPhone 的 Notes 應用程式中掃描列印和手寫筆記 Nov 29, 2023 pm 11:19 PM

2022年,Apple為iPhone和iPad上的Notes應用程式添加了一項新功能,可讓您快速掃描列印或手寫文字並將其儲存為數位文字格式。繼續閱讀以了解其工作原理。在早期版本的iOS和iPadOS上,將文字掃描到Apple的Notes應用程式中需要點擊筆記的文字字段,然後點擊彈出式選單中的「即時文字」選項。然而,Apple在2022年使現實世界的筆記數位化變得更加容易。以下步驟向您展示如何在執行iOS15.4或iPadOS15.4及更高版本的裝置上完成此操作。在iPhone或iPad上,打開“

C#開發注意事項:安全漏洞掃描與修復 C#開發注意事項:安全漏洞掃描與修復 Nov 23, 2023 am 08:26 AM

在C#開發中,隨著網路技術的不斷發展,安全問題也愈加嚴峻。為保障應用程式的安全性,開發人員需要注意安全漏洞的掃描與修復。本文將從以下幾個面向介紹注意事項。一、注意資料傳輸安全在應用程式中,資料傳輸安全非常重要。特別是在使用網路傳輸資料時,應該盡可能使用安全的協定和加密演算法。為了保障資料的完整性和機密性,建議使用安全通訊端層(SSL)或傳輸層安全性(TLS)等

See all articles