python通过端口和协议查出服务名
生活随笔
收集整理的這篇文章主要介紹了
python通过端口和协议查出服务名
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? ? 通過指定的端口和協議找到服務名如果想找到網絡服務,最好知道該服務運行在TCP或UDP協議的哪個端口上。如果知道網絡服務使用的端口可以調用socket庫中的getservbyport()函數來獲取服務的名字。
技術點分解:
1、定義find_service_name()函數,注意函數內代碼縮進
2、getservbyport(port,port_type),通過port查找service,port_type為‘tcp’和‘udp’兩種
3、for-in 循環一組變量。在每次遍歷中,獲取端口對應的服務名
代碼如下:
import??socket def?find_service_name():port_type?=?'tcp'port_type1?=?'udp'for?port?in?[25,80,22]:print?("Port:?%s?=>?service?name:?%s"?%(port,socket.getservbyport(port,port_type)))print("Port:?%s?=>?service?name:?%s"?%?(53,?socket.getservbyport(53,?'udp'))) find_service_name()備注:socket.getservbyport這函數定義的端口種類過少,經過測試像3306 mysql這種常見的都顯示報錯,只當做測試使用吧,個人感覺沒啥太大實用價值
運行結果:
轉載于:https://blog.51cto.com/laobaiv1/1956451
總結
以上是生活随笔為你收集整理的python通过端口和协议查出服务名的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1012: [JSOI2008]最大数m
- 下一篇: 妹纸这套路玩的好深,吹泡泡能吹出气球来