【Python】ポート番号とプロトコル名から「サービス名」を取得

Pythonの標準モジュール「socket」を用いて、ポート番号とプロトコル名から「サービス名」を取得する方法についてソースコード付きでまとめました。

ポート番号とプロトコル名から「サービス名」を取得

Pythonの標準モジュール「socket」のgetservbyportメソッドを使うことで、ポート番号とプロトコル名から「サービス名」を取得できます。

サンプルコード(Python)

サンプルプログラムのソースコードです。

# -*- coding:utf-8 -*-
import socket

# ポート番号とプロトコル名からサービス名を取得
def service_name(port, protocol_name):
    print('Port:', port)
    print('protocolname:', protocol_name)
    print('Service name:', socket.getservbyport(port, protocol_name))
    print('--------------------')


service_name(port=80, protocol_name='tcp')
service_name(port=25, protocol_name='tcp')

"""
Port: 80
protocolname: tcp
Service name: http
--------------------
Port: 25
protocolname: tcp
Service name: smtp
--------------------
"""
関連記事
1 【Python】ネットワークプログラミング入門
2 Python入門 基本文法

コメント