ルートレスコンテナでUDPポート全体をホストからコンテナにマッピングする方法は?

ルートレスコンテナでUDPポート全体をホストからコンテナにマッピングする方法は?

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

利用可能なリソースにはTCPポートに関する情報が含まれていますが、UDPに関する情報は見つかりません。また、podman portルートなしで実行すると、ブリッジの代わりに名前空間 "magic"が使用されるようです。

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

これで、クラシック仮想マシンを使用すると、人々はiptables好きなように使用できますが、slirp4netnsこれはオプションではありません。

どのように実装できますか?それともUDPは実際には不可能ですか?これはルートレスコンテナの厳しい制限ですか?

ベストアンサー1

物を探している間に偶然これを見つけました。おそらく私が助けることができるでしょう。

Podmanはルートレスネットワーキングツールをrootlesskit(最小バージョン> 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 }]"

だから動作する必要があります。

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

おすすめ記事