* BSDが単一のソケットでIPv4とIPv6の両方のトラフィックを受け入れるように強制する


8

私はたくさんのものを試しました、そして完全に空の手で出てきます。

状況を整理します。

Plex Media Server(Plexpass)を実行するFreeBSDに* BSD Jailセットアップがあります。IPv6アクセスがあり、それを使用するように構成されています。Plexは現在、単一のソケットを使用するように構築されています(これは、この動作をサポートするRFCがあるため、標準の範囲内です)。セキュリティ上の懸念から、BSDは単一のソケットで両方のプロトコルをリッスンすることを禁止しているため、IPv4とIPv6に異なるソケットを使用するように明示的にプログラムされていないアプリケーションは、ソケットがバインドされていないプロトコルで通信できません。

WebブラウザーでリテラルIPv6アドレスを使用して管理ページにアクセスできます。MyPlexはリモートアクセスのためにサーバーにアクセスできません(MyPlexは現在IPv4のみをサポートしています)。

追加情報:

root @ plexmediaserver_plexpass:/#netstat -a | grep 32400
tcp6 0 0 * .32400 聴く

私は以下を試しました:

  • rc.confでipv6_ipv4mapping = "YES"を設定する
  • sysctl net.inet6.ip6.v6only = 0の設定
  • socatを使用して、ポート上のTCP4を32400にプロキシし、アドレス[:: 1]:32400上のTCP6にプロキシする
  • socatを使用して、ポートのTCP4を32400にプロキシし、アドレス[Public-IPv6-Address]:32400のTCP6にプロキシする
  • 上記の混合

私は完全に途方に暮れています。ISPがIPv6 en-massへの切り替えを開始したので、これはヨーロッパの多くの人々にとって大きな問題であることを知っています。彼らにとってはそれほど悲惨ではありませんが、それは私にとって無限にイライラします。この問題に対するPlexの恒久的な修正のステータスに関する情報は見つかりませんでした。私の知る限り、最善の修正は、複数のポートにバインドし、MyPlexが両方をプルし、トラフィックを通過できるかどうかに基づいて、使用するプロトコルを決定することです。しかし、これは彼らのフォーラムの問題です。

ここでの私の質問は、* BSDにIPv6ソケットに関するRFC標準への準拠を強制する他の方法があるのか​​、またはサポートが完全に廃止されているのかということです。

私が得ることができるどんな助けにも感謝します。


これは、サーバー障害についてよりよく尋ねられる質問でしょうか?
Nathanial Meek

関連する可能性があります:stackoverflow.com/questions/5587935/…–
kasperd

この質問にどのサイトが最適かは完全にはわかりません。unix.stackexchange.comもあります。これは、さまざまなUNIXバリアントの正確な違いを知るための最良の場所です。私が最初に情報を検索しようとしたところ、Linux固有の結果が判明しました。デュアルスタックソケットの処理には、LinuxとBSDの間でいくつかの違いがあるようです。
kasperd

回答:


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.