H3C路由器設置NAT回環、端口回流


起因

  • 當用本地服務器作為frp的服務端時,需要在路由器上設置端口映射,將公網ip和本地ip映射起來,用於作為frps的公網,這一步很簡單一般都會有可視化界面來實現,但實際測試時發現問題:
    • 當非局域網內通過frp訪問時,正常。
    • 當本地服務器所在同一局域網內訪問時,不通。
  • 一開始還以為是frp有什么問題,后來多方查證,才明白是路由相關的問題,而且這也不能算是問題,是路由器的正常現象,但是也可以通過設置來解決此問題。

准備

  • 路由器:H3C MSR830-10BEI

  • 串口連接線,用於連接電腦和路由器的console口,一端是網線頭,一端是9針頭的(類似顯示器線接頭,台式機后邊可能會有此接口,筆記本沒有則還需要一個轉usb的轉換頭)

  • 電腦,安裝SecureCRT軟件,用於串口連接

開始

  • 連接線9針頭一端接電腦上,網線頭一端接路由器console端口上(路由器上有標識)
  • 電腦上打開SecureCRT,同時需要到【計算機】選擇【屬性】--【設備管理器】--【端口】查看當前連接的端口是哪個,然后點“快速連接”來配置連接參數,按照下圖設置:

  • 連接成功會顯示<H3C>字樣。

相關命令

  • 首先要弄明白自己路由的外網口(wan口)和內網口(lan口),可以登錄路由后台,在【系統工具】 -- 【配置管理】可以看到所有的配置行,其中interface開頭的就是網口相關,但是有很多個,並不容易區分,我的還是相對比較簡單區分,內網口帶關鍵字vlan,所以一下就分辨出來了interface Vlan-interface1 ,外網口則不好找,一開始以為是interface GigabitEthernet0/0 ,但后來發現並不是,由於我們一開始做了nat映射,所以在配置文件中找nat server protocol 關鍵字,看它是在哪個interface下,最終發現是interface Dialer0 .
  • 進入系統配置,命令:sys,會提示按Ctrl + Z退出,此命令等同於system-view,也可能提示無法登錄等,可以輸入命令super,然后輸入密碼,我的是admin,再次sys就可以登錄了此時提示符會由<H3C>變成[H3C]
  • 配置ACL 2000,允許對內部網絡中192.168.1.0/24網段的報文進行地址轉換:
    • 命令:acl basic 2000,進入acl 2000配置,網上也有很多說是acl number 2000,可能不同機器不一樣,都試下。
    • 命令:rule permit source 192.168.1.0 0.0.0.255,根據實際的192.168.x.x的網段來
    • 命令:quit,退出
  • 在外網口配置Easy IP方式的出方向動態地址轉換,使得內網主機訪問內網服務器的報文可以使用外網口的IP地址進行源地址轉換:
    • 命令:interface Dialer0,進入外網口配置
    • 命令:nat outbound 2000,設置outbound
    • 命令:quit,退出
  • 在內網口上開啟NAT hairpin功能:
    • 命令:interface Vlan-interface1,進入內網口配置
    • 命令:nat hairpin enable,開啟hairpin
    • 命令:quit,退出
  • 以上配置完成后,正常來說是可以訪問了,不需要重啟,但是我的路由並不能,網上查找后又加入了一條命令:security-zone intra-zone default permit
  • 如果想刪除某個上述命令,則需要用命令:undo xxxx,例如進入內網口配置后命令undo nat hairpin enable來取消開啟

結尾

  • 后續完善的還有很多,但和路由設置沒太多關系了,例如自動解析域名到公網IP,以免斷網后公網IP變更導致frp失敗等
  • 本身對路由配置並不了解,記錄下來,可能后續還會用到,以免忘了
  • 最后是換了個刷了OpenWrt的路由器,不需要自己配置回環,而且自帶自動解析域名等各種功能,比自己折騰這些好多了,哈哈!

參考


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM