ホスト上でポートを公開できないが、Docker上で公開すると動作する

ホスト上でポートを公開できないが、Docker上で公開すると動作する

AWS インスタンスがあります。すべての受信トラフィックと送信トラフィックはすべてのポートで許可されています。

python3 -m http.server 8000 ホスト上で実行しますが、<hostIP>:8000ホストマシンの外部からはアクセスできません。

ここで、docker run -di -p 8000:8000 ubuntu同じホスト上で docker コンテナを実行します。

実行している Docker コンテナ内では、ホスト マシンの外部からpython3 -m http.server 8000GET を実行できます。<hostIP>:8000

私にはこのことが理解できません。何が起こっているのか、何か考えはありますか?

PS: tcpdump を実行したところ、ホストは tcp SYN パケットを受信して​​いるものの、SYNACK で応答していないことがわかりました。

追伸:lsof -Pi :8000

python3 13376 root 3u IPv4 71025 0t0 TCP *:8000 (LISTEN)

答え1

ufwサービスはシステム上のすべてをブロックしていました。Docker はufw適切に構成されていたため、すぐに動作していました。停止するufwと、すべてが機能するようになりました。顔面を手で覆う瞬間です。

関連情報