2

使用中のデフォルトのネットワークを調べたい。私の現在の方法は、すべてのIPアドレスを見つけて、それをデフォルトゲートウェイのIPアドレスと比較することでしたが、それはばかげているように聞こえます。それを行う正しい方法は何ですか?

アップデート

コマンドではなく、Cプログラムを使いたい...

4

1 に答える 1

2

少し汚れていますが、非常に簡単なアプローチを試すことができます。

cnicutar@lemon:~$ ip route show to 0.0.0.0/0
default via X.Y.Z.T dev eth0  proto static
                        ^^^^

だからあなたは試すことができます:

FILE *cmd = popen("ip route show", "r");
fgets(str, LEN, cmd);

strtok次に、strstrなどを使用できます。

于 2012-05-09T09:52:44.187 に答える