通过 route -n命令获取网络信息,再通过C语言解析,获取

代码如下:

 44 int main()
 45 {
 46     char Cmd[100]={0};
 47     char readline[100]={0};
 48     memset( Cmd, 0, sizeof( Cmd ) );
 49     sprintf( Cmd,"route |grep default|awk \'{print $2}\'");
 50     FILE* fp = popen( Cmd, "r" );
 51 
 52     if ( NULL == fp )
 53     {
 54         return -1;
 55     }
 56 
 57     memset( readline, 0, sizeof( readline ) );
 58     while ( NULL != fgets( readline,sizeof( readline ),fp ))
 59     {
 60         if(readline[strlen(readline)-1] == '\n')
 61         {
 62            readline[strlen(readline)-1] = 0;
 63         }
 64         printf("gateway=%s\n",readline);
 65         break;
 66     }
 67     pclose(fp);
 68     return 0;
 69 }
                                

测试情况:

root@mkx:~/workspace/learn# ./getGateWay 
gateway=192.168.111.2
root@mkx:~/workspace/learn# 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐