91av免费观看_日韩视频在线免费看_日本xxxx色视频在线观看免费_伊人222综合网图片_国产二区三区在线_91麻豆麻豆

IT之道-艾銻知道

您當前位置: 主頁 > IT服務 > 網絡服務 >

艾銻無限為您整理:IP地址轉換:數字與字符串之間的轉換


2020-02-14 17:26 作者:艾銻無限 瀏覽量:



迎戰疫情,艾無限用愛與您同行

中國中小企業提供免費IT外包服務
 
 
 
這次的肺炎疫情對中國的中小企業將會是沉重的打擊,據釘釘和微信兩個辦公平臺數據統計現有2億左右的人在家遠程辦公,那么對于中小企業的員工來說不懂IT技術將會讓他們面臨的最大挑戰和困難。
 
電腦不亮了怎么辦?系統藍屏如何處理?辦公室的電腦在家如何連接?網絡應該如何設置?VPN如何搭建?數據如何對接?服務器如何登錄?數據安全如何保證?數據如何存儲?視頻會議如何搭建?業務系統如何開啟等等一系列的問題,都會困擾著并非技術出身的您。
 
 
好消息是當您看到這篇文章的時候,就不用再為上述的問題而苦惱,您只需撥打艾銻無限的全國免費熱線電話:400 650 7820,就會有我們的遠程工程師為您解決遇到的問題,他們可以遠程幫您處理遇到的一些IT技術難題。
 
如遇到免費熱線占線,您還可以撥打我們的24小時值班經理電話:15601064618或技術經理的電話:13041036957,我們會在第一時間接聽您的來電,為您提供適合的解決方案,讓您無論在家還是在企業都能無憂辦公。
 
那艾銻無限具體能為您的企業提供哪些服務呢?


 
艾銻無限始創于2005年,歷經15年服務了5000多家中小企業并保障了幾十萬臺設備的正常運轉,積累了豐富的企業IT緊急問題和特殊故障的解決經驗,制定了相對應的解決方案。我們為您的企業提供的IT服務分為三大版塊:
 
第一版塊是保障性IT外包服務:如電腦設備運維,辦公設備運維,網絡設備運維,服務器運維等綜合性企業IT設備運維服務。
 
第二版塊是功能性互聯網外包服務:如網站開發外包,小程序開發外包,APP開發外包,電商平臺開發外包,業務系統的開發外包和后期的運維外包服務。
 
第三版塊是增值性云服務外包:如企業郵箱上云,企業網站上云,企業存儲上云,企業APP小程序上云,企業業務系統上云,阿里云產品等后續的云運維外包服務。
 
您要了解更多服務也可以登錄艾銻無限的官網:www.bjitwx.com詳細說明疫情期間,您企業遇到的任何困境只要找到艾銻無限,能免費為您提供服務的我們絕不收一分錢,我們全體艾銻人承諾此活動直到中國疫情結束,我

們將這
次活動稱為——春雷行動
 
以下還有我們為您提供的一些技術資訊,以便可以幫助您更好的了解相關的IT知識,幫您渡過疫情中辦公遇到的困難和挑戰,艾銻無限愿和中國中小企業一起共進退,因為我們相信萬物同體,能量合一,只要我們一起齊心協

力,一定會成功。再一次祝福您和您的企業,戰勝疫情,您和您的企業一定行。


艾銻無限為您整理:IP地址轉換:數字與字符串之間的轉換


IP 地址庫中 IP 地址的保存格式一般有兩種,一種是點分十進制形式(192.168.1.1),另一種是數字形式(3232235777),應用中,經常需要在這兩種格式之間做轉換。

IP 地址庫中 IP 地址的保存格式一般有兩種,一種是點分十進制形式(192.168.1.1),另一種是數字形式(3232235777),應用中,經常需要在這兩種格式之間做轉換。

針對這一個問題我在 exnet 擴展包里面實現可兩者的轉換的快捷方法:


· func IP2Long(ip net.IP) (uint, error) IP2Long 把 net.IP 轉為數值

· func Long2IP(i uint) (net.IP, error) Long2IP 把數值轉為 net.IP

· func IPString2Long(ip string) (uint, error) IPString2Long 把 ip 字符串轉為數值

· func Long2IPString(i uint) (string, error) Long2IPString 把數值轉為 ip 字符串

使用示例:

1. package main 
2.  
3. import ( 
4.     "fmt" 
5.     "net" 
6.     "reflect" 
7.  
8.     "github.com/thinkeridea/go-extend/exnet" 
9. ) 
10.  
11. func main() { 
12.     ip := "192.168.1.1" 
13.  
14.     n, _ := exnet.IPString2Long(ip) 
15.     s, _ := exnet.Long2IPString(n) 
16.  
17.     fmt.Println(n, s == ip) 
18.  
19.     Ip1 := net.ParseIP(ip) // 會得到一個16字節的byte,主要為了兼容ipv6 
20.     n, _ = exnet.IP2Long(Ip1) 
21.  
22.     Ip2, _ := exnet.Long2IP(n) 
23.  
24.     fmt.Println(n, reflect.DeepEqual(Ip1[12:], Ip2)) 
25. } 

那么是如何將點分十進制的IP地址轉為數字?

IPv4 地址有4個字節,樣式如下:

· MSB————–LSB

· b4 b3 b2 b1

每個字節表示的范圍:

· byte4: 4294967296(1<<32)

· byte3: 16777216(1<<24)

· byte2: 65536(1<<16)

· byte1: 256(1<<8)

通用公式:b4<<24 | b3<<16 | b2<<16 | b1

例如,222.173.108.86

轉換方法:222<<24 | 173<<16 | 108<<8 | 86 = 3735907414

再例如,1.0.1.1

轉換方法:1<<24 | 0<<16 | 1<<8 | 1 = 16777473

exnet 中實現如下:

1. // IPString2Long 把ip字符串轉為數值 

2. func IPString2Long(ip string) (uint, error) { 

3.     b := net.ParseIP(ip).To4() 

4.     if b == nil { 

5.         return 0, errors.New("invalid ipv4 format") 

6.     } 

7.  

8.     return uint(b[3]) | uint(b[2])<<8 | uint(b[1])<<16 | uint(b[0])<<24, nil 

9. } 

把數值轉換為字符串的邏輯翻轉過來即可, exnet 中實現如下:

1. // Long2IPString 把數值轉為ip字符串 

2. func Long2IPString(i uint) (string, error) { 

3.     if i > math.MaxUint32 { 

4.         return "", errors.New("beyond the scope of ipv4") 

5.     } 
6.  

7.     ip := make(net.IP, net.IPv4len) 

8.     ip[0] = byte(i >> 24) 

9.     ip[1] = byte(i >> 16) 

10.     ip[2] = byte(i >> 8) 

11.     ip[3] = byte(i) 

12.  

13.     return ip.String(), nil 


14. } 

相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 国产真人做爰视频免费 | 麻豆精产国品一二三区别网站 | 最近中文字幕免费手机版 | 日日噜噜夜夜狠狠久久丁香五月 | 色综合久久久久久久久久久 | 人妻少妇精品一区二区三区 | 在线看日韩 | YW193.CAN尤物国产在线网页 | 粉嫩av一区二区在线观看 | 国产午夜AAA片无码无片久久 | 午夜中文字幕hd无码无删减 | 调教小奴高潮惩罚PLAY露出 | 国产精品午夜福利在线观看地址 | 四韩色情无码一区二区三区 | 日韩成人无码一区二区三区 | 女人天堂一区二区三区 | 免费永久看黄神器 | 无码人妻精品一区二区三区在线 | 欧美日韩一区二区三区免费视频 | 亚洲AV无码一区二区三区网址 | 亚洲AV中文无码乱人伦在线视色 | 香港日本三级在线播放 | AV无码中文字幕不卡一区二区三区 | 国产午精品午夜福利757视频播放 | 国产a级免费观看 | 天堂在线最新版 | 亚洲成A人片在线观看国产 xxxxx古代性xxxx | 国产国拍亚洲精品MV在线观看 | 亚洲中文字幕伊人久久无码 | 国产成a人亚洲精v品久久网 | 久久久无码精品亚洲A片软件 | 嫩草影院入口 | 爽到高潮的A片护士 | 丰满少妇被猛烈进入A片 | 亚洲AV成人影视在线观看 | 无码人妻AV一区二区三区蜜臀 | 欧美人与动ZOZO在线播放 | 日本丰满人要无码视频 | 日本九九热在线观看官网 | 野花香视频在线观看免费高清版 | 日本欧美一区二区三区乱码 |