日誌獲取公網Ip以及內網穿透

2021-10-10 15:22:52 字數 1137 閱讀 6880

檢視是不是那裡出了問題。要想解決這個問題,就要先找到那些地方插入ip,插入時是怎麼獲取的。

順藤摸瓜,找到了getip(),這個方法,進入原始方法檢視,發現方法是httpcontext.class中提供的,但是不知道為什麼不生效。於是我決定改變策略,不如自己寫乙個工具類,提供getaddress()獲取公網ip.

public static string getipaddress() 

if (ipaddress == null || ipaddress.length() == 0 || "unknown".equalsignorecase(ipaddress))

if (ipaddress == null || ipaddress.length() == 0 || "unknown".equalsignorecase(ipaddress))

if (ipaddress == null || ipaddress.length() == 0 || "unknown".equalsignorecase(ipaddress))

if (ipaddress == null || ipaddress.length() == 0 || "unknown".equalsignorecase(ipaddress)) catch (unknownhostexception e)

ipaddress = inet.gethostaddress();}}

//對於通過多個**的情況,第乙個ip為客戶端真實ip,多個ip按照','分割

if (ipaddress != null && ipaddress.length() > 15)

}return ipaddress;

}

通過生成web位址我就能用手機訪問我的web專案了,然後比對用手機訪問獲取的ip有什麼不同,就能測試出工具類是否生效。但是切記手機不要連線wifi,要不然你會發現手機訪問的ip跟你電腦的一樣。

可以根據自己專案的埠進行自定義配置

後續的操作,上述提供的新手教學官方教程都有。完整配置好之後就可以用手機訪問生成的**鏈結。之後再測試getipaddress()是否成功實現。

frp內網穿透,無公網ip訪問內網服務

這裡只是配置了http協議穿透,可以在內網提供http服務,在公網訪問 其他的tcp或者udp,frp這個軟體也是支援的,我暫時用不到所以沒去探索 簡單寫一下吧 工具 frp 寶塔 內網客戶端 win10系統 公網服務端 centos7.6 建議內網客戶端先建立站點並配置好服務 站點網域名稱為127...

內網ip 公網ip

a類位址的第一組數字為1 126。注意,數字0和 127不作為a類位址,數字127保留給內部回送函式,而數字0則表示該位址是本地宿主機,不能傳送。b類位址的第一組數字為128 191。c類位址的第一組數字為192 223。1.a類位址 a類位址的表示範圍為 0.0.0.0 126.255.255.2...

內網ip 公網ip

a類位址的第一組數字為1 126。注意,數字0和 127不作為a類位址,數字127保留給內部回送函式,而數字0則表示該位址是本地宿主機,不能傳送。b類位址的第一組數字為128 191。c類位址的第一組數字為192 223。1.a類位址 a類位址的表示範圍為 0.0.0.0 126.255.255.2...