方法一就是访问路由器的管理界面,从中提取出IP地址,只是这种方法每种路由器界面都不同,只能具体问题具体解决。
方法二需要外网有一台机器开启一个服务,告诉所有连接上来的客户端当前连接所用的IP地址。

解决方案 »

  1.   

    在windows下,命令行输入:ping -n 1 -r 9 www.baidu.com
    在linux下,终端输入:curl ifconfig.me上面windows上的方法我实测不太好用.linux的可以,另外一个比较好用的就是
    telnet cip.cc
    有个网页你看看:
    www.boll.me/archives/491
      

  2.   

    4楼方法可行,自己简单写下socket recv下处理就行。
      

  3.   

    通用的方法只能是访问外部页面获得,但是不要使用ip138、123cha之类的网站,要使用正式的internet管理机构的页面查询,比如apnic、arin等等,推荐你使用https://www.arin.net,其分析方法很高级,可以准确探测出多重内网/防火墙的端口代理,定位出距离你的电脑最近的公网IP,其他网站的准确程度要逊色很多。