Python OSError:[Errno99]要求されたアドレスエラーソリューションを割り当てることができません



Python Oserror Cannot Assign Requested Address Error Solution



Python OSError:[Errno99]要求されたアドレスのエラー解決を割り当てることができません

tcpOrder_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #Forced to allow port reuse tcpOrder_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR,1) locall_addr = ('', 7890) # Binding local information tcpOrder_socket.bind(locall_addr) #print(tcpOrder_socket) tcpOrder_socket.connect((server_ip, int(server_port)))

OSError:[Errno 99]プログラムの最後の行でサーバーに接続するときに、要求されたアドレスを割り当てることができないというエラーがときどき発生します。このエラーの原因がわかりません。このエラーを回避するための2つの解決策を次に示します。



方法1:Pythonコマンドラインでvi / etc / hostsを実行します

行127.0.1.1の名前を自分のものに変更します(vi / etc / hostnameで取得します)



127.0.0.1ローカルホスト

127.0.1.1ホスト名#ここにホスト名を入力します。/etc/hostnameの名前と同じである必要があることに注意してください。

上記の変更後、vimを終了して変更を保存します。ファイルが読み取り専用で変更できないことを確認するメッセージが表示された場合は、最初にスーパー管理者権限を取得し(sudo -sは自分のパスワードを入力して入力します)、次に上記の操作に進みます。



このメソッドは、OSErrorの発生を効果的に防ぐことができます:[Errno99]要求されたアドレスエラーを割り当てることができません


方法2:片目を開いて片目を閉じる

while True: Try:# Capture OSError: [Errno 99] Cannot assign requested address is abnormal tcpOrder_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #Forced to allow port reuse tcpOrder_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR,1) locall_addr = ('', 7890) # Binding local information tcpOrder_socket.bind(locall_addr) #print(tcpOrder_socket) tcpOrder_socket.connect((server_ip, int(server_port))) choice_num = input('Please enter the operation code:') except Exception as link_fault: continue

例外キャプチャを使用します。たまに発生するエラーですので、プログラムを数回実行してスムーズに通過させてください。ただし、このエラーが常に発生する場合は、常にここでスタックするため、この方法はお勧めしません。無限ループに入る


上記はOSErrorの解決策です:[Errno 99]要求されたアドレスエラーを割り当てることができません、洞察力のある同僚はメッセージを残すか、root @xxxxxに連絡することができます