package main
天柱ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
import (
"fmt"
"net"
"os"
)
func main() {
addrs, err := net.InterfaceAddrs()
if err != nil {
fmt.Println(err)
os.Exit(1)
}
for _, address := range addrs {
// 檢查ip地址判斷是否回環(huán)地址
if ipnet, ok := address.(*net.IPNet); ok !ipnet.IP.IsLoopback() {
if ipnet.IP.To4() != nil {
fmt.Println(ipnet.IP.String())
}
}
}
}
很簡單,我送你一個(gè)例子,不僅可以顯示外網(wǎng)ip還可以顯示ip屬地,如(福建省廈門市電信)。請(qǐng)看以下的代碼:
.程序集 窗口程序集1
.子程序 _按鈕1_被單擊
.局部變量 ip地址, 文本型
.局部變量 ip屬地, 文本型
標(biāo)簽1.標(biāo)題 = “”
ip地址 = 到文本 (HTTP讀文件 (“”))
ip屬地 = 取文本中間 (ip地址, 尋找文本 (ip地址, “您的IP是:/tdtd”, 1, 真) + 19, 取文本長度 (ip地址) - 尋找文本 (ip地址, “您的IP是:/tdtd”, 1, 真) - 19) ' 取剩余字符
ip地址 = 取文本左邊 (ip屬地, 尋找文本 (ip屬地, “/”, 1, 真) - 1)
ip屬地 = 取文本中間 (ip屬地, 尋找文本 (ip屬地, “您來自:/tdtd”, 1, 真) + 17, 尋找文本 (ip屬地, “/td/tr”, 1, 真) - 尋找文本 (ip屬地, “您來自:/tdtd”, 1, 真) - 18)
標(biāo)簽1.標(biāo)題 = “你的外網(wǎng)IP地址是:” + ip地址 + “,IP屬地:” + ip屬地
四樓的代碼不理想,取本機(jī)IP (),我一開始就想到了,但你上網(wǎng)用的是路由器,所以它取的ip地址是路由器分配的地址。所以我用測試ip的網(wǎng)頁來測試你的外網(wǎng)ip這才絕對(duì)準(zhǔn)確的。
//通過ip138網(wǎng)站來查詢外網(wǎng)IP的
#include afxinet.h
void CLanChatDlg::GetNetIP()
{
SetDlgItemText(IDC_NET_IP,"正在獲取外網(wǎng)IP");
CString strsource;
CString Address;
CInternetSession mySession(NULL,0);
CHttpFile* myHttpFile=NULL;
Address="";//ip138網(wǎng)頁
myHttpFile=(CHttpFile*)mySession.OpenURL(Address);//讀取網(wǎng)絡(luò)地址
while(myHttpFile-ReadString(strsource))
{ //循環(huán)讀取下載來的網(wǎng)頁文本
// AddToLog(strsource);
int begin=0;
begin=strsource.Find("[",0);
if(begin!=-1)//如果找到"[", 則找"]" 中括號(hào)內(nèi)的文本則是 你的外網(wǎng)ip
{ int end=strsource.Find("]");
m_internetip=strsource.Mid(begin+1,end-begin-1);//提取外網(wǎng)ip
SetDlgItemText(IDC_NET_IP,m_internetip);//在左下角顯示外網(wǎng)ip
}
}
實(shí)際業(yè)務(wù):go 二進(jìn)制文件在私有化部署中,需要對(duì)客戶的服務(wù)器mac和ip進(jìn)行綁定,系統(tǒng)只能運(yùn)行在綁定的服務(wù)器上。把mac和ip地址配置到config中。
運(yùn)行效果:系統(tǒng)可正常編譯,正常訪問,在用戶Auth接口進(jìn)行核對(duì)。
//檢驗(yàn)Mac和內(nèi)網(wǎng)IP,測試環(huán)境不做校驗(yàn)
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("示授權(quán)的應(yīng)用MAC,請(qǐng)聯(lián)系")
}
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("示授權(quán)的應(yīng)用IP,請(qǐng)聯(lián)系")
}
return nil
}
項(xiàng)目使用GoFrame框架1.6。考慮到客戶可能會(huì)對(duì)內(nèi)存數(shù)據(jù)做分析破解,可以把mac和ip地址做AES加密。
如何查看本機(jī)ip地址?其實(shí)這個(gè)問題問得有點(diǎn)歧義,查看電腦ip可以理解成查看電腦在局域網(wǎng)里的ip設(shè)置,也可以理解成電腦在當(dāng)前互聯(lián)網(wǎng)中的ip地址。
這2種區(qū)別系統(tǒng)大全希望大家一定要去稍微理解下,那么本地IP地址與互聯(lián)網(wǎng)中IP地址有什么區(qū)別呢?
在這里系統(tǒng)大全簡單介紹下,本地IP地址需要存在于局域網(wǎng)中,如常見的路由器組建的多人共享上網(wǎng)就屬于局域網(wǎng),路由器會(huì)為每個(gè)用戶分配一個(gè)路由器局域IP地址,局域網(wǎng)內(nèi)所有用戶共用的時(shí)一個(gè)互聯(lián)網(wǎng)IP地址。
一:如何查看本機(jī)ip地址,首先介紹下,查看電腦在局域網(wǎng)里的ip地址
首先,右擊“網(wǎng)上鄰居”,選擇“屬性”;
然后,在打開的窗口中找到“本地連接”,右擊,選擇“屬性”;
第三,在彈出的對(duì)話框中,選擇“Internet協(xié)議”,點(diǎn)擊“屬性”。
就可以查看電腦的ip了,如下圖:
查看局域網(wǎng)中內(nèi)部IP地址方法
不過,如果你的電腦是自動(dòng)獲得ip,以上方法則不能查看ip,那怎么辦呢?
可以嘗試一下方法:“開始”-“運(yùn)行”,輸入“cmd”,在輸入“ipconfig /all”,就可以查看到ip了!非常全,可以好好研究研究了!
我的建議是訪問一個(gè)顯IP網(wǎng)站,如ip138 然后從源文件里正則匹配出IP地址
分享題目:go語言獲取本機(jī)外網(wǎng)ip go語言獲取時(shí)間戳
文章分享:http://muchs.cn/article28/hggejp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、網(wǎng)站導(dǎo)航、域名注冊(cè)、靜態(tài)網(wǎng)站、動(dòng)態(tài)網(wǎng)站、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)