Open1

(仮) Docker Desktop for Mac 上のubuntuコンテナからpingを飛ばすと, パケットがインターネットに出るまでのどこかでTTLが改変されているっぽい件

corvvscorvvs

環境

  • マシンはM1 Mac
  • Docker Desktop for Mac を動かしている
  • その上でubuntuのコンテナが動いている
  • ubuntuにはinetutils-2.2のpingコマンドが入っている

観測事実

  • ホストOS(mac)でコマンドping -m 3 google.comを実行するとタイムアウトする
    • -m 3は「pingパケットのTTLを3に設定して送信する」という意味
  • ゲストOS(ubuntu)でコマンドping --ttl 3 google.comを実行するとpongが返ってくる
    • --ttl 3は「pingパケットのTTLを3に設定して送信する」という意味
  • ゲストOSでping --ttl 3 google.comを実行する際にゲストOS, ホストOS双方でパケットキャプチャを行うと:
    • ゲストOS
      • TTLが3のICMP Echo Requestパケットが観測される
    • ホストOS
      • TTLが64のICMP Echo Requestパケットが観測される