teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

ソースコードの追加

2016/06/07 13:01

投稿

Myyuu3
Myyuu3

スコア13

title CHANGED
File without changes
body CHANGED
@@ -1,11 +1,71 @@
1
1
  pythonでネットワークプログラミングを勉強しています。ipとportを入力して実行したらsocket.error:[Errno99] Cannot assign requested addressと出てしまいます。解決法はありますか。
2
2
 
3
+ ソースコード
4
+ サーバ
5
+ #! /usr/bin/env python
6
+ # coding:utf-8
7
+ # tcp_server
3
8
 
9
+ import socket
10
+ import threading
4
11
 
5
12
 
13
+ bind_ip = "192.168.12.4"
14
+ bind_port = 8000
6
15
 
16
+ server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
7
17
 
18
+ server.bind((bind_ip,bind_port))
8
19
 
20
+ server.listen(5)
21
+
22
+ print '[*]Listening on %s:%d' % (bind_ip,bind_port)
23
+
24
+ def handle_client(client_socket):
25
+ bufsize=1024
26
+ request = client_socket.recv(bufsize)
27
+
28
+ print '[*] Recived: %s' % request
29
+
30
+ client_socket.send("Hallo Client!!!\n")
31
+
32
+ client_socket.close()
33
+
34
+
35
+ while True:
36
+
37
+ client,addr = server.accept()
38
+
39
+ print '[*] Accepted connectoin from: %s:%d' % (addr[0],addr[1])
40
+
41
+ client_handler = threading.Thread(target=handle_client,args=(client,))
42
+
43
+ client_handler.start()
44
+
45
+
46
+ クライアント
47
+ #! /usr/bin/env python
48
+ # coding:utf-8
49
+ # tcp_client
50
+
51
+ import socket
52
+
53
+ target_url='192.168.12.3'
54
+ target_port=8000
55
+
56
+ s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
57
+
58
+ s.connect((target_url,target_port))。
59
+
60
+ s.send('Hello Server!!!\n')
61
+
62
+ response = s.recv(4096)
63
+ print response
64
+
65
+
66
+
67
+
68
+
9
69
  ###補足情報(言語/FW/ツール等のバージョンなど)
10
70
  バージョン python 2.7.10
11
71
  os ubuntu15.04