私は、SIP サーバーの可用性をチェックするサービス (Python で記述され、Twisted フレームワークを使用し、Debian GNU/Linux で実行される) を実装する過程にあります。これには、OPTIONS メソッド (SIP プロトコル機能) を使用します。これは一般的な方法のようです。正しい RFC 準拠のヘッダーを作成するには、確立される接続の送信元 IP アドレスと送信元ポートを知る必要があります。[どのように] Twisted でこれを行うことができますか?
これは私が試したことです: 私はprotocol.DatagramProtocolをサブクラス化し、その中で andstartProtocol(self)
を使用self.transport.getHost().host
しself.transport.getHost().port
ました。後者は実際に使用されるポートですが、前者は 0.0.0.0 しか生成しません。
この時点で、Twisted は [まだ?] どのインターフェースが使用されるか、どのソース IP アドレスが使用されるかを認識していないと思います。Twisted はこれを支援する機能を提供していますか、それとも別の方法で OS とのインターフェース (ルーティング) が必要ですか? それとも使い方をself.transport.getHost().host
間違えただけ?