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

Python018

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

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

运行效果:系统可正常编译,正常访问,在用户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、然后单击目前的无线网络连接,打开无线网络连接状态面板;

3、单击属性,打开无线网络连接属性面板;

4、在无线网络连接属性面板里,双击Internet协议版本4(TCP/IPv4);

5、在弹出的Internet协议版本4(TCP/IPv4)属性面板里输入要设置的IP地址和子网掩码等,然后单击确定保存即可。

连接WIFI,无线网卡是可以修改IP地址的,具体步骤如下:

假设路由器的IP是192.168.1.1,参见路由器盒子上的标签或说明书。

1、点右下角的无线网络标志,鼠标右键选择打开网络和共享中心;

2、点无线网络连接;

3、点属性;

4、选择Internet协议版本4(TCP/IPv4),点属性;

5、选中使用下面的IP地址;

IP地址:192.168.1.100(192.168.1.2~192.168.1.254都可);

子网掩码:255.255.255.0;

默认网关:192.168.1.1;

选中使用下面的DNS服务器;

首选DNS服务器:192.168.1.1(也可填写地区通用DNS);

备用DNS服务器:可不填;

然后点确定。