go语言获得外网ip go语言访问数据库

Golang 绑定mac和ip地址,限制服务器

实际业务:go 二进制文件在私有化部署中,需要对客户的服务器mac和ip进行绑定,系统只能运行在绑定的服务器上。把mac和ip地址配置到config中。

专注于为中小企业提供成都做网站、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业鱼峰免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

运行效果:系统可正常编译,正常访问,在用户Auth接口进行核对。

//检验Mac和内网IP,测试环境不做校验

func (c *CommonBase)CheckMacAndIp()error {

ipCfg :=g.Cfg().GetString("machine.Ipaddr")

macCfg :=g.Cfg().GetString("machine.Macip")

if ipCfg =="127.0.0.1" {

return nil

}

macArray,_ :=gipv4.GetMacArray()

if len(macArray) ==0 {

return gerror.New("mac地址获取失败")

}

if garray.NewStrArrayFrom(macArray).Contains(macCfg) ==false {

return gerror.New("示授权的应用MAC,请联系")

}

ipArray,_ :=gipv4.GetIpArray()

ipIntranetArray,_ :=gipv4.GetIntranetIpArray()

if len(ipArray) ==0 len(ipIntranetArray) ==0 {

return gerror.New("ip地址获取失败")

}

if garray.NewStrArrayFrom(ipArray).Merge(ipIntranetArray).Contains(ipCfg) ==false {

return gerror.New("示授权的应用IP,请联系")

}

return nil

}

项目使用GoFrame框架1.6。考虑到客户可能会对内存数据做分析破解,可以把mac和ip地址做AES加密。

怎么才能获得公网IP?

1、登陆路由器。如图所示。

2、然后我们就能在运行状态里面看到Wan的IP地址了。如图所示。

3、WAN的IP地址就是我们用于上网的IP地址了。切换到系统工具。如图所示。

4、当然我们也可以在其他地方看公网IP。

5、切换到系统工具。如图所示。

6、然后打开系统日志,在系统日志里面有一个W=什么什么的,这个就是公网的IP地址了。如图所示。

如何用命令查看外网IP地址

查看外网IP地址方法:

方法一:执行命令IPCONFIG查询外网IP地址

1.用电脑直接通过宽带(PPPoE)或拨号上网;执行命令“ipconfig”;

查看宽带连接的IP地址即为外网IP地址;

注意:是创建的宽带连接的的IP地址,并非本地连接的IP地址;

2.若用电脑直接连网,并非动态IP而是固定IP;自己用于连网的本地连接的IP地址即为外网IP。

方法二:直接登录宽带路由器查询外网IP地址

1.设备在局域网内,通过宽带路由器共享上网,以直接登录宽带路由器查询外网IP地址;

2若不知宽带路由器IP地址;执行命令“ipconfig”;

查看用于连接网络的有线或无线网卡的默认网关,即为宽带路由器IP地址。

3.打开浏览器,输入宽带路由器的内网IP地址,输入正确的用户名及密码,确定登录;

4.查看“运行状态”里的“WAN口状态”;即可查看到设备的外网IP地址。

用C语言编写程序如何获得外网的IP的地址

//通过ip138网站来查询外网IP的

#include afxinet.h

void CLanChatDlg::GetNetIP()

{

SetDlgItemText(IDC_NET_IP,"正在获取外网IP");

CString strsource;

CString Address;

CInternetSession mySession(NULL,0);

CHttpFile* myHttpFile=NULL;

Address="";//ip138网页

myHttpFile=(CHttpFile*)mySession.OpenURL(Address);//读取网络地址

while(myHttpFile-ReadString(strsource))

{ //循环读取下载来的网页文本

// AddToLog(strsource);

int begin=0;

begin=strsource.Find("[",0);

if(begin!=-1)//如果找到"[", 则找"]" 中括号内的文本则是 你的外网ip

{ int end=strsource.Find("]");

m_internetip=strsource.Mid(begin+1,end-begin-1);//提取外网ip

SetDlgItemText(IDC_NET_IP,m_internetip);//在左下角显示外网ip

}

}


本文名称:go语言获得外网ip go语言访问数据库
URL网址:http://hbruida.cn/article/doodghh.html