想问下,如果想获得本地主机的内网和公网IP地址分别要如何调用函数?另外端口解析的有关问题

想问下,如果想获得本地主机的内网和公网IP地址分别要怎么调用函数?另外端口解析的问题
1。有没有函数或者方法能解析端口,实现端口映射的功能,这样的话,内网用户不用每次都要做端口映射,直接填写公网IP就可以。。

2。要用变量获得本地主机的内网和公网IP地址分别要怎么调用函数?

谢谢了。。。多亏有大家的帮助,本人才一步一步的成长起来

------解决方案--------------------
1 没有,需要自己在nat上面做映射

2 gethostbyname( "localhost ");内网IP,至于公网的只能让外面的机器告诉你
------解决方案--------------------
不能获得本机的公网地址吗??
不借助其他机器是不可能的事情.
------解决方案--------------------
hostent *pHost=::gethostbyname(hostname); //这句里hostname一定要调用获得的主机名吗?

你定义一下就行了 char hostname[50];

char *p=pHost-> h_addr_list[0]; //这里h_addr_list[0]表示列表中的第一个,就是本地IP?

是的

in_addr addr;// 这里的in_addr就是表示IP地址类型吗?专门用来接收IP的类型?

这个你可以不用管它,CString v4IP=::inet_ntoa(addr);,出来的就是CString 类型了