web-dev-qa-db-ja.com

ルートレスコンテナで、ホストからコンテナまでのUDPポートの全範囲をマップする方法は?

Podmanで実行されるルートレスコンテナを使用して、ホストからコンテナに1:1でマッピングすることにより、UDPポートの範囲を公開する方法があるかどうか疑問に思っています。

利用可能なリソースにはTCPポートの情報が含まれていますが、UDPに関する情報を見つけることができませんでした。また、podman portは、rootlessを実行しているときに、ブリッジではなく名前空間「magic」を使用しているように見えます。

ホストIPv4アドレスの10000..20000(UDP)などの範囲を、同じ範囲のポートとしてコンテナーにマップしたいと思います。

今では古典的なVMではiptablesを自由に使うことができますが、 slirp4netns ではこれはオプションではありません。

どうすればそれを達成できますか、またはUDPは実際には不可能であり、これはルートレスコンテナの厳しい制限です。

1
0xC0000022L

ものを検索しているときにこれに遭遇した、多分私は助けることができます:

Podmanは、ルートレスネットワーキングのツールをルートレスキットに切り替えました(少なくともバージョン> 1.8)。

-p 35010-35013:35010-35013/udp

私は得る

DEBU[0000] rootlessport: time="2020-05-08T23:05:17Z" level=info msg="exposing ports [{35010 35010 udp } {35011 35011 udp } {35012 35012 udp } {35013 35013 udp }]"

だからそれはうまくいくはずです。

また、ブリッジなどのよりネイティブなネットワークモードが機能するには、rootが必要です(コンテナのネットワークデバイスを作成するため)。

1
Klaus Wagner