ドメインがmoarcatz.tk
のHerokuアプリケーションがあります。 Pythonのsocket
を使用して非HTTPリクエストをリスンします。
空の文字列にソケットをバインドしてIPアドレスとしてバインドすると、使用可能なすべてのインターフェイスがリッスンされます。私はさまざまなIPアドレスから空の要求を得ていたので、ソケットをmoarcatz.tk
への接続だけをリッスンするように設定すると問題が解決されると仮定します。しかし、ソケットをドメイン名にバインドする方法はわかりません。
は私が'moarcatz.tk
'とgethostbyname('moarcatz.tk')
を試してみましたが、両方は私に、このエラーを与える:Pythonソケットを特定のドメインにバインドする方法は?
OSError: [Errno 99] Cannot assign requested address
ものとまでは何?
リスニングソケットをDNSホスト名にバインドすることはできず、IPアドレスまたはインターフェイスにのみバインドすることはできません。 –
@KlausD。では、どうすれば 'moarcatz.tk'へのリクエストしか得られないのでしょうか? – Leva7
厳密に言うと、あなたはできません。 HTTPなどのアプリケーションレベルのプロトコルでは、IPアドレス(ホストヘッダーなど)を取得するために使用されたドメイン名に関する情報を得ることができますが、これは正しいことが保証されていないため、偽装することができます。ソケット/トランスポートレベルでは、その情報は送信されません。 – bimsapi