因為家里有空閑電腦,并且家里的移動寬帶是100M,
想著自己的阿里云服務器才5M的帶寬,這簡直不是一個檔次,阿里云服務器網速640k/s上限,
640k/s*20倍就相當于12M/s的網速,(太香了)
家里的電腦有好幾個T的資料一直存著,出門的時候就可以利用它來進行訪問,然后以后就可以不用在阿里云服務器了,這樣也挺好的,
我研究了好多天,一直找資料,有人實作了公網訪問,網上的資料都說移動寬帶有提供公網的ipv6,然而我一直嘗試,結果一直都是失敗,我一直懷疑網上的資料是不是假的,或者說他們所在的網路環境和我所在的網路環境不一致,某種原因導致網路并沒有通,
最終我成功了!也想明白了整個網路的原理和我失敗的原因,
先講原理
移動的寬帶的確是有提供公網的ipv6地址,如果我們將光貓作為路由器使用,那么就是利用光貓進行撥號,通過寬帶賬號撥號分配了一個公網ipv6,這個公網ip被光貓本身使用了,
設定光貓,首先需要登錄光貓的超級管理員后臺
也就是輸入 192.168.1.1 輸入超級管理員賬號和密碼,不是光貓后面的!!!這是一個坑

一個坑的記錄
很多人認為光貓后面提供的用戶名和密碼就是光貓的管理員賬號,實則不然,這賬號和密碼是沒有權限配置寬帶賬號這些東西的,我們需要使用超級管理員進行登錄,這是一個坑!需要注意一下
常用的超級管理員賬號和密碼
賬號:
1.移動光貓常用超級賬號:
CMCCAdmin
密碼:
aDm8H%MdA
2.華為光貓常用超級賬號:telecomadmin,超級密碼:admintelecom
3.移動光貓常用超級賬號:telecomadmin,超級密碼:nE7jA%5m
輸入超管賬號登錄后會有如下的界面


第一步、將撥號的連接名稱設定為橋接
之所以設定為橋接的目的是讓本地電腦直接撥號得到公網ip,如果不是橋接,就如上圖所示,在光貓這個界面配置了寬帶賬號,也就是相當于利用光貓進行撥號得到公網ip(這種方式也就是電腦插網線就能直接連通互聯網),好比虛擬機的vmnet8模式使用了nat網路地址轉換,也就相當于光貓它創造了一個局域網,而我們的電腦在這個局域網內,然后通過vmnet8與外網進行訪問,
很多人拿這個地址來檢測公網ip也就是:http://test-ipv6.com/index.html.zh_CN
實際上用光貓撥號的時候得到的這個ipv6是局域網內部的,并非真正的公網ip地址,
會發現上面網站得到的公網ip與光貓的ipv6是不一樣的網段,這也就是為什么你明明通過上面那個網址查到了公網ip,但是你發現根本訪問不到(另外一個原因是埠被移動禁用了,例如80、443、8080)
選擇連接名帶Internet_B_VID_的連接名

將連接模式路由 改成 橋接,這里先完成測驗,把原理搞通,后面我們再想辦法(因為橋接這種方式會導致家里的wifi沒法用了)
然后直接保存即可
下面是我家光貓的設定,可以參考,實際上什么也不用做,直接保存/應用就可以了

第二步、進行撥號獲取公網ipv6
為了方便,以及避免不必要的坑,我們將win10自帶的網卡的ipv6給去掉,在powershell或者cmd下執行
netsh interface IPv6 set privacy state=disable
執行完后,當我們撥號完成后就不會有多個ipv6地址,也是方便后面ddns動態的將本地的公網 ipv6 添加到dns服務器上,方便我們用域名進行訪問
接著我們在設定寬帶連接



完成連接后,可以使用上面的網站獲取到公網ip或者win10的ipconfig得到

訪問的參考格式:http://[2409:8a38:8603:2e61:6046:fd40:5852:2fd6]:1880/ 其中1880是埠
注意移動寬帶禁了80,443,8080埠(這是第二個坑,要注意一下),這些埠是訪問不到的,需要將服務器埠改成其它埠
以tomcat為例,將conf/server.xml中的8080埠改成其它埠,先證明我們能通過公網ipv6能訪問到家中的tomcat服務器

這個時候用手機的流量訪問

需要注意的是,這個訪問不一定在所有網路都生效,一般情況下可以直接訪問的到,如果不能訪問到則嘗試改埠(有些埠可能被移動禁用,例如80,443,8080等)
為了方便使用一般都會買個域名做dns決議,有些域名很便宜,在阿里云上買一個域名,然后備案,備案后就可以使用dns決議了,這樣就可以通過域名訪問自己家里的服務器
阿里云DDNS決議,首先得有一個備案完后的域名,國內網站是需要備案才能決議
DDNS 很多人會另外買一臺路由器,例如黑群輝,如果要做到ddns動態的修改決議記錄并不用額外買另外的網路設備,
實際上他們要做的事情無非就是在域名決議這里添加了一條AAAA型別的記錄,也就是將這個ipv6加入到域名決議中,如下,也可以手動添加,如下圖左上角藍色的添加記錄可以手動添加

我找到最簡單的ddns就是這個
去github:找到release,其中有windows版本的
https://github.com/NewFuture/DDNS/releases
下載二進制檔案ddns.exe,然后運行一次就會在相同目錄下生成一個組態檔

我下載了那個定時任務bat檔案,其作用就是做定時的執行ddns.exe程式,形成動態的修改dns,因為撥號得到的ipv6過了一定時間后就會重新分配,
如下,我們需要修改config.json(雙擊ddns.exe就會生成它)

用文本編輯器編輯它

id和token的獲取
可以通過下面先找到子賬號,用于管理dns用

https://ram.console.aliyun.com/overview
創建一個用戶

1、創建用戶

2、授予DNS相關的權限

因為我們要管理dns,所以如下

3、獲取id和token


將上圖中兩個資訊填入前面提到的id 和 token即可,然后運行一次定時任務就可以每5分鐘自帶更新dns記錄的值
完成后就可以實作 域名+埠的方式進行訪問,這種方式是將服務器徹底暴露在公網上,但注意有些埠是被移動禁用掉的,例如80、443、8080這些埠
其它參考文章:https://www.pc936.com/index.php/article/22.html
這種方式會導致光貓本身的wifi功能就廢了,在我研究光貓管理頁面的時候我發現這款光貓有關于DMZ的設定,興許我可以直接使用將光貓設定為路由,然后將分配到的公網ip指向指定的內網服務器,
后面再繼續研究
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/259432.html
標籤:其他
上一篇:webrtc中peerconnection_client生成vs工程檔案
下一篇:Java回圈陳述句
