実現したい事
Pythonにおいて外部PCからソケットを受信したい。
概要
server側PCでTCPserverを実行してLISTENING状態にし、
client側PCからパケットをsendしたのですが、WinError10061が出ます。
ConnectionRefusedError: [WinError 10061] 対象のコンピューターによって拒否されたため、接続できませんでした。
socket通信で外部IPアドレスを受信するにはどうすればいいですか。
[server側]
IP = 0.0.0.0,port = 5555
[client側]
IP = 0.0.0.0,port = 5555
確認した事
・client側PCで''netstat -an''を実行しても''0.0.0.0:5555''は有りませんでした。
(server側では0.0.0.0:5555はLISTENING状態になっていました。)
・serverもclientも、自身のPCで通信したら、エラーは出なかった。
・ネットワークに接続しているか。
環境
server側:Windows11 64bit
IP:192.168.0.19
client側:Windows10 64bit
IP:192.168.0.13
ネットワーク構成
LANアダプターデフォルトゲートウェイ:192.168.0.1
サブネットマスク:255.255.255.0
(同じ一つのルーターを使用)
両方python 3.6で実行
補足
TCPserver.pyとTCPclient.pyは
https://github.com/oreilly-japan/black-hat-python-2e-ja/blob/master/chapter-02
を使いました。
補足2
説明不足で申し訳ありません。
環境情報を追加しました。
TCPServer.py
python
1import socket 2import threading 3 4IP = '0.0.0.0' 5PORT = 5555 6 7 8def main(): 9 server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 10 server.bind((IP, PORT)) 11 server.listen(5) 12 print(f'[*] Listening on {IP}:{PORT}') 13 14 while True: 15 client, address = server.accept() 16 print(f'[*] Accepted connection from {address[0]}:{address[1]}') 17 client_handler = threading.Thread(target=handle_client, args=(client,)) 18 client_handler.start() 19 20 21def handle_client(client_socket): 22 with client_socket as sock: 23 request = sock.recv(1024) 24 print(f'[*] Received: {request.decode("utf-8")}') 25 sock.send(b'ACK') 26 27 28if __name__ == '__main__': 29 main()
TCPclient.py
python
1import socket 2 3target_host = '0.0.0.0' 4target_port = 5555 5 6# ソケットオブジェクトの作成 7client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 8 9# サーバーへ接続 10client.connect((target_host,target_port)) 11 12# データの送信 13client.send(b"GET / HTTP/1.1\r\nHost: google.com\r\n\r\n") 14 15# データの受信 16response = client.recv(4096) 17 18print(response.decode()) 19client.close()
tcpserver.pyでLISTENING状態にしてからnetstat -an
を実行した結果
プロトコル ローカル アドレス 外部アドレス 状態 TCP 0.0.0.0:135 0.0.0.0:0 LISTENING TCP 0.0.0.0:445 0.0.0.0:0 LISTENING TCP 0.0.0.0:2869 0.0.0.0:0 LISTENING TCP 0.0.0.0:5040 0.0.0.0:0 LISTENING TCP 0.0.0.0:5357 0.0.0.0:0 LISTENING TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING TCP 0.0.0.0:49666 0.0.0.0:0 LISTENING TCP 0.0.0.0:49667 0.0.0.0:0 LISTENING TCP 0.0.0.0:49668 0.0.0.0:0 LISTENING TCP 0.0.0.0:49669 0.0.0.0:0 LISTENING TCP 10.0.0.1:139 0.0.0.0:0 LISTENING ~~~~~~~~~~~~~~~~~~~
0.0.0.0 5555が存在しない。
回答1件
あなたの回答
tips
プレビュー