透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

作者:imdingji

最近入坑軟路由,走了不少彎路,踩了不少坑,目前正常運轉起來了,能透過域名(繫結IPV4或IPV6)遠端訪問到家裡的Openwrt,所以把自己摸索出來的方法說一下,供新手參考,讓各位老鳥見笑

總的來說,從外網訪問家裡的裝置,就是註冊域名,將域名繫結到家裡裝置的IP(IPV4或者IPV6),具體步驟如下:

一、網路結構

我是用的軟路由做主路由,安裝PVE後虛擬了Openwrt進行橋接撥號,主路由再接交換機,交換機接了兩個AX6組MESH,大致結構如下

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

二、IPV4公網IP獲取

我辦理的是電信200M寬頻,預設不給公網地址,因為公網IPV4地址越來越少。

我第一步給10000號打電話,客服說請示一下給我答覆。半小時後給我回電話,說可以發公網IP,但是需要每個月辦理一個20元的套餐。我不同意,表示要投訴。

客服登記後,第二天電信的一個經理回電說根據政策,2020年10月以後新申請的寬頻都不能免費申請公網IP了,必須辦20元的套餐。我表示抗議,表示要投訴到工信部(唬人的。。)

第三天這個經理再回電問我是否同意關閉這個投訴,我不同意。然後她說會轉到技術部門聯絡我,要我注意接聽

當天下午,一個略帶口音的男人給我打電話,聽背景聲音是在機房裡面,我立馬腦補了一副IT程式猿的形象:鬍子拉碴,髮際線上移,格子襯衫,坐在四個顯示器面前,螢幕上各種程式碼飛滾,黑框眼鏡後面透露出一絲犀利的光芒哥們上來就問我,你是要申請公網IP是吧?我說是的,正準備憑我三寸不爛之舌來說服他的時候,那邊就說,15分鐘重啟一下光貓就可以了。然後啪的就掛了電話。。。

結果5分鐘之後我就在openwrt裡面重新撥號就獲到了公網IP了

。可以在百度裡面輸入“IP”檢視結果,把這個結果與OPENWRT-網路-介面-WAN中獲取的IPV4地址對比,如果是一樣的那就說明成功獲到公網IP了

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

三、IPV6地址獲取

如果實在拿不到IPV4地址也沒關係,IPV6一樣好使。IPV6是一種終極解決方案,理論上它可以為地球上的每一粒沙子分配獨立的IP地址。所以只要用上ipv6,我們可以輕輕鬆鬆給每個裝置分配一個獨立的IP地址。而且隨著寬頻技術的進一步普及,現在的三大運營商都已經提供了ipv6網路服務。當然你也可以打客服電話問一下是否支援IPV6。獲取IPV6地址的方法如下:

1。修改網路-介面-WAN6(如果沒有就新建)

特別注意:物理設定中要選擇“@wan”,如果沒有這個選項就在下面的自定義埠中輸入:@wan,儲存即可

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

2。修改WAN口和LAN口設定

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

按照上面的設定,這個時候應該可以正常獲取到IPV6地址了,我們可以去www。test-ipv6。com 測試下網路是否連通了IPv6。如果網站的測試透過,說明我們已經成功擁有了IPV6地址。

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

在我們的介面中也可以看到有240e開頭的IPV6地址了

電信是240e開頭的(240e::/20)

移動是2409開頭的(2409:8000::/20)

聯通是2408開頭的(2408:8000::/20)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

四、設定防火牆

擁有ipv6地址是第一步,接下來我們要設定防火牆,讓外網裝置可以訪問內網的IPV6裝置。

進入網路-防火牆-通訊規則,新增一條“ipv6”,注意“限制地址”可以只選“僅IPV6”,目標埠限定一些指定的埠(用空格分開),如“1100 8822”,這樣更加安全些

儲存應用後,我們可以從外網直接輸入地址進行訪問,也可以用手機關掉WIFI用資料訪問,但是要注意訪問地址形式為(注意加中括號):http://[240e:380:80c:8403:a47a:f490:354:95cf]

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

五、域名註冊和解析

雖然我們現在可以直接用IP地址訪問了,但IPV6地址的地址太長太難記了,這時我們可以註冊一個域名,將域名與將IP地址繫結起來。以騰訊dnspod為例:

進入dnspod。cn註冊一個域名,這個應該大家都會,。xyz和。top之類的域名都挺便宜,註冊成功後進入“我的域名-點選域名-新增記錄”

增加兩條解析記錄v4和v6,分別對應IPV4和IPV6,如果只有一類地址則可以只加一條解析,需要注意IPV4用A類解析,IPV6用AAAA類解析,後面地址填寫自己獲到的公網IP

需要特別注意:如果如下圖頂部提示紅色解析錯誤,那麼是無法訪問的。我折騰了幾天後來發現,原來是需要備案

備案入口點選左邊的“域名註冊”,右邊會提示“未實名”,按照要求準備資訊模板,提交管理局稽核即可。大概1-2天就會通過了

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

六、動態域名DDNS解析設定

域名能正常解析後,我們應該就可以透過域名地址訪問家裡的openwrt了,如v4。xxx。top或者v6。xxx。top

但是由於目前IPV4和IPV6的地址也是動態分配的,裝置重啟或者過段時間ip地址就會有變化,所以我們還需要一個步驟就是在公網IP地址發生變化後,及時更新到dnspod中的對應解析地址

這個時候我們就需要動態域名解析DDNS。我嘗試了系統自帶的動態dns,下載了騰訊官方的ddns外掛,從網上看了N個教程都不行,最後還是自己在github解決了

在github中搜索“ddns”,第一個結果就是https://github。com/jeessy2/ddns-go,經我自己測試非常好用,並且簡單清晰,介面科學!感謝“jeessy2”大神!

1。首先下載對應的軟體包https://github。com/jeessy2/ddns-go/releases,比如我的是X86的,就下載“ddns-go_3。3。5_Linux_x86_64。tar。gz”

2。解壓後得到“ddns-go”,將該檔案透過openwrt的“系統-檔案管理”,上傳到一個指定目錄,注意不要上傳到“/tmp”中

3。用pve進入openwrt的命令介面,進入ddns-go所在資料夾,輸入“chmod 777 ddns-go”修改一下許可權

4。輸入“。/ddns-go -s install”安裝服務,安裝會有兩行提示,沒有報錯應該就成功了。可以用“ls /etc/init。d |grep ddns-go”看一下是否安裝好了

5。此時輸入openwrtIP:9876就可以透過web訪問ddns-go進行配置。其中ID和TOKEN在dnspod登入後,右上角點選頭像-我的賬號-API金鑰管理-DNSPod Token進行新建。

注意:不要用“騰訊雲 API 金鑰”的方式。另外,獲取IP方式可以先用網絡卡獲取試試,如果獲取不正常可以用“透過介面獲取”,實測穩定性還是不錯的。

設定成功後,ddns-go頁面的右側就開始正常動態解析了,預設是5分鐘解析一下。當openwrt的公網IP地址發生變化時,會自動獲取最新IP,同步到dnspod中

透過IPV6或者IPV4遠端訪問家裡的Openwrt(奶媽級教程)

6。最後一步,很重要!將ddns-go設定為開機自啟動:ln -s /etc/init。d/ddns-go /etc/rc。d/S50ddns-go

至此,所有的設定都已經OK,透過v4。xxx。top或者v6。xxx。top在辦公室正常訪問家裡的裝置了。

另外需要注意,如果v6域名打不開,看看自己外網環境是否支援IPV6,比如我在公司就只能用V4地址,用不了V6。但是手機是兩個地址都支援的。

炒股開戶享福利,入金抽188元紅包,100%中獎!

開啟App看更多精彩內容