2016-05-27 20 views
-2
from ipaddress import * 
from socket import * 
x = str(IPv4Address('125.67.8.0')) 
s = socket() 
s.bind((x,456)) 

トレースバック(最新の呼び出しの最後):パーミッションが拒否されるのはなぜですか?

File "<stdin>", line 1, in <module> 
    OSError: [Errno 99] Cannot assign requested address 

も、新しいIPアドレスを構築するためのIPアドレスのコンストラクタを呼び出した後、なぜ私は結合しないことができませんか?スーパーユーザーモードでプログラムを実行しましたが、私の方法には何が問題なのですか?

+3

これを実行しているマシンのアドレスは '125.67.8.0'ですか? 1024以下のポートを使用する特権ユーザーとして実行していますか? –

+0

そのIPはあなたのものですか? – noteness

+1

上記以外にも、私の好奇心は、なぜあなたは文字列から作成したオブジェクトをストリング化していますか? – Busturdust

答えて

0

bindコマンドを使用している場合、IPのパラメータは文字列なので、単純なs.bind(('125.67.8.0', 456))が機能します。 IPを文字列として受け取り、文字列に戻す操作を行う必要はありません。

関連する問題