2009/05/31

Android で DNS サーバアドレスと経路テーブルを見る方法

android-platform メイリングリストで書きましたが、Android で、DNS サーバアドレスと経路テーブルを特別な外部コマンドを使わず、shell 上のみで確認する方法です。

DNSサーバのアドレスを確認するには、net.dns{1,2} に対して getprop コマンドを発行します。
# getprop net.dns1
192.168.32.18
ADP-1などを使っていて、DHCP経由で取得したアドレスを知りたい場合には、dhcp.tiwlan0.dns{1,2}を確認すると良いでしょう。
# getprop dhcp.tiwlan0.dns1
192.168.32.18
同様に、DHCP経由で取得したルータのアドレスを取得するには、dhcp.tiwlan0.gatewayが利用できます。
# getprop dhcp.tiwlan0.gateway
192.168.32.1
一方、現時点の経路情報を見たい場合には、/proc/net/route を cat で覗くのが簡単です。例えば、以下のような出力を得ることが出来るでしょう。
# cat /proc/net/route
Iface Destination Gateway  Flags RefCnt Use Metric Mask  MTU Window IRTT
tiwlan0 0020A8C0 00000000 0001 0 0 0 00FFFFFF 0 0 0
tiwlan0 00000000 0120A8C0 0003 0 0 0 00000000 0 0 0
Destination が '00000000' の行はデフォルト経路情報です。

Gatewayには、'0120A8C0' と書かれていますが、10進数表記に直すと'1.32.168.192'となり、'192.168.32.1'の順番がひっくり返ったものと読めます。

コマンドがそれほど充実していない Andorid の shell 環境なだけに、頭の片隅にでも留めておくと、「なぜかネットワークにつながらない」という時には便利なのではないかと思います。

0 件のコメント:

コメントを投稿