2016-12-06 3 views
0

私はDNSサーバーとDNSリゾルバを実装しています。私はこれでソケットプログラミングを使用しています。しかし、bind()にはエラーbind()が失敗し、sendto()が拒否されました。bind()failed:アドレスは既に使用中です

私は別のポート番号を使って試していましたが、私もrootとして働いていますが、それでも私は同じエラーを出しています。それらの問題を解決するのを助けてください。あなたの答えは大歓迎です。ありがとう。

https://github.com/srijan/DNS-Server---Resolver/tree/c73a124a15f53eb985a4b4afc0dffedd432c8454

+0

これは通常、指定されたポートで他のソケットが開いていることを意味します。 – dbush

+1

[Error:アドレスを持つソケットをバインド中にアドレスが使用されていますが、ポート番号は\ netstat \ 'で解放されています(http://stackoverflow.com/questions/5106674/error-address-already-in) -use-while-binding-socket-address-but-the-port-num) –

+0

エラーの発生場所とエラーメッセージに実際のコードを投稿できますか? http://stackoverflow.com/help/how-to-ask – garfbradaz

答えて

0

このエラーは通常、システム内の他のソケットが同じポート上でオープンであることを意味します。

他のUDPソケットが開いているかどうかを確認するには、コマンドラインからnetstat -anuを実行してください。 IP /ポートのペアのリストが表示されます。あなたがポート53のために1つを見たら、そのソケットはあなたと競合しています。 rootとして実行することができ、-pオプションも使用できる場合は、さらに各ソケットを所有するプロセス番号が表示されます。

関連する問題