Linux で、指定ポートの要求の送受信をリッスンする方法
Linuxでは以下の方法を使って、指定のポート要求の送受信をリッスンできます。
- netcat(nc)コマンドを使用する:
nc -l -p <port>
特定のポートを監視し、受信リクエストをコンソールに出力します。
- socatコマンドを使って
socat -v TCP-LISTEN:<port>,fork
指定したポートを監視し、受け取ったリクエストをコンソールに出力します。
- telnetコマンドを使用して:
telnet localhost <port>
指定したポートにTelnet接続し、リクエストの送受信を行います。
- ncatコマンドを使う:
ncat -l <port>
指定のポートでリスンし、着信リクエストをコンソールに出力します。
- Pythonのsocketライブラリを使用して簡単な待ち受けプログラムを書く
import socket
HOST = ''
PORT = <port>
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
with conn:
print('Connected by', addr)
while True:
data = conn.recv(1024)
if not data:
break
conn.sendall(data)
指定されたポートをリッスンするTCPソケットを作成し、受理したリクエストをクライアントに返却します。
全てのメソッドで、 は実際にリスンするポート番号に置き換える必要がある点に注意してください。