4
4

More than 5 years have passed since last update.

ゲストOSからホストOSのIPアドレスを確実に得るにはどうすればいいんだ。みんなの知恵をわけてくれ

Posted at

ホストOS の ssh 転送をゲストOSからも使いたいんですわ。

で、どうもネットワーク設定が「NAT」の場合はデフォルトゲートウェイがたいていホストOSのIPになっているみたいなので、とりあえず、こんな Lua バッチを書いてみた。一応、期待動作はするんですけどね (Windows7ゲスト on VirtualBox)

hostip.cmd
::rem:: --[[ vim:set ft=lua:
@lua "%~f0" %1 %2 %3 %4 %5 %6 %7 %8 %9 & exit /b
]]--

function getGateway()
    local ipconfig = io.popen("ipconfig","r")
    for line in ipconfig:lines() do
        local m = line:match("デフォルト.*%s([0-9]+%.[0-9]+%.[0-9]+%.[0-9]+)")
        if m then
            ipconfig:close()
            return m
        end
    end
    ipconfig:close()
end
print(getGateway())
実行結果
✏ hostip
10.0.2.2

ホストOSのIPアドレスがデフォルトゲートウェイに設定されて、それを検索するのはいいんだけど、これじゃあ、どこでも動くというわけにはいかないよね?

  • 検索キーワードが「デフォルト」って日本語はどうなのよ?
  • 複数ネットワークアダプタがある時、これでいいの?
  • これ、VirtualBox でしか試してないけど、VMware でも動けばなぁ(理由あって、両方併用してる。まだ試せてない)
  • できたら、ゲストOSとホストOSを自力で区別したいなぁ(ホストだと 127.0.0.1 を返すようにしたい)

みんなの知恵を分けてくれ!

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4