[點晴永久免費OA]Tinc VPN 大局域網實現備忘錄
當前位置:點晴教程→點晴OA辦公管理信息系統
→『 經驗分享&問題答疑 』
隨著公網 IPv4 地址的匱乏,如今各處上網大部分都處于寬帶商大內網當中,互連和便捷成了最大問題。為了實現單位、家里、手機等設備的無縫連接,較長時間以來,我一直在苦苦追尋和試用相關 VPN ,譬如 ZeroTier 、n2n 、Tinc 等。我的要求很簡單,就是單位電腦和家里電腦可以互連和訪問,手機可以隨時隨地連接單位和家里電腦,眾多設備之間最好可以 Peer-to-Peer 。ZeroTier 需要第三方節點支持,不受控,n2n 雖說可以 P2P ,但是v1、v2版本又不兼容,實際使用沒那么順暢。Tinc 可以 P2P ,雖然配置繁瑣一點,但沒那么復雜,又多平臺支持,經過一段時間試用,基本滿足日常需求,實現私人大內網。下面記錄相關實現過程。 一、Tinc 介紹詳細介紹和說明請參閱官網:(https://www.tinc-vpn.org/),此處粘貼相關介紹如下: Tinc VPN 是一個網狀結構的虛擬局域網軟件,基于P2P的技術,可以實現流量直接到達目標機器,而不像傳統 VPN 那樣必須經過中間的服務端。適合連接的兩個機器速度快于到服務器的速度的情況。 有如下優點: 1.加密,身份驗證和壓縮 可選擇使用zlib或LZO壓縮所有流量,并使用LibreSSL或OpenSSL對流量進行加密,并使用消息驗證代碼和序列號保護流量不被更改。 2.自動全網狀路由 無論您如何設置 tinc 守護進程以相互連接,VPN流量始終(如果可能)直接發送到目標,而不通過中間躍點。 3.NAT遍歷 只要VPN中的一個節點允許公共IP地址上的傳入連接(即使它是動態IP地址),tinc就能夠進行NAT遍歷,允許對等體之間的直接通信。 4.輕松擴展您的VPN 當您想要向VPN添加節點時,您只需添加一個額外的配置文件,無需啟動新的守護進程或創建和配置新設備或網絡接口。 5.能夠橋接以太網段 您可以將多個以太網段鏈接在一起以像單個段一樣工作,從而允許您運行通常僅通過Internet在LAN上運行的應用程序和游戲。 6.多操作系統運行(支持平臺:https://www.tinc-vpn.org/platforms/)并支持IPv6。 二、安裝PC端各系統版本在(https://www.tinc-vpn.org/download/)下載安裝, Android 平臺在(https://tincapp.pacien.org/)下載安裝, iOS 平臺在(https://www.tinc-vpn.org/packages/cydia/)下載安裝。 以下我的系統環境 Debian 示例,其他平臺請詳細閱讀官方說明文檔。 Debian 系統下,可在終端直接輸入命令 三、規劃Tinc 有三種工作模式:路由器Route、交換機Switch及集線器Hub。默認模式是路由器模式。沒什么特殊要求的話就直接采用默認模式。 確定 Tinc 專項局域網網絡名稱:liTinet,根據自己喜好改。 確定 Tinc 專項局域網網絡網段:10.0.7.0/24 確定好各節點名稱和IP。 我的網絡拓撲及各節點配置具體如下: 四、詳細配置所有節點(不包含移動設備如Android手機)在安裝好 tinc 后,均需手動或自動在系統 /etc/tinc/ 文件夾下建立和產生如下目錄和文件: 每個節點的hosts文件夾內容相同,不同的是外面的文件,nets.boot 文件可以不用改動。 以下僅以節點lipc1、lipc7、lipc10為例說明具體文件的內容: (一)節點lipc11.設置 tinc.conf 文件2.編輯 hosts/lipc1 文件3.執行命令:為lipc1 生成 RSA 公鑰和私鑰,這將在 /etc/tinc/liTinet 下創建私鑰文件 rsa_key.priv ,并自動追加公鑰到上一步創建的 hosts/lipc1 文件,打開 hosts/lipc1 文件,末尾已經添加了公鑰。 4.編輯 tinc-up 文件5.編輯 tinc-down 文件為 tinc-up 文件的逆向命令。 6.更改 tinc-up、tinc-down 文件權限(二)節點lipc7步驟整體同上,細節不同,因為 lipc7 沒有公網,且在內網當中。 1.tinc.conf 文件2.hosts/lipc7 文件3.tinc-up 文件4.tinc-down 文件(三)節點lipc10步驟整體同上,lipc10 沒有公網,也處于內網當中,但此處不暴露關聯所在內網。 1.tinc.conf 文件2.hosts/lipc10文件3.tinc-up 文件4.tinc-down 文件五、啟動和關閉各節點一樣。 各節點在以排錯方式啟動后,如無錯誤,均能 ping 通對方,則表示配置成功,可以設置成為引導時啟動。 設置為引導時啟動: 至此,Tinc 大局域網搭建完成。 六、Android 節點配置Android 節點端配置些許不同,具體見 App 使用說明。 1.下載安裝 Tinc App 后,啟動: 選擇“生成節點配置和密鑰”,設置網絡名同上為 liTinet ,節點名為 liad6 ,密碼為空或隨意。 2.修改配置目錄下 network.conf 文件 增加修改如下兩處即可,其他內容根據實際需要修改: 3.修改配置目錄下 tinc.conf 文件 4.在配置目錄下 hosts/liad6 文件末尾添加 其他默認。 將 liad6 文件拷貝至其他節點 hosts 目錄下,其他節點相應的文件也要拷貝到 Android 手機配置目錄 hosts 目錄下。 所有節點重啟服務,則可互相訪問。 七、相關使用經驗1.如上配置后,除 lipc7 外其他節點八九成是不能直接訪問和 ping 通 10.1.12.1 和 10.1.12.6 兩臺內網主機的,此時可以嘗試在路由器 10.1.12.1 上設置經 10.1.12.7 到 10.0.7.0/24 網段的靜態路由。 2.如出現以下錯誤: 則可能相應節點宕機了,嘗試重啟服務。 3.原本處于同一物理網絡的節點,直接 ping 時延較低,但 ping tinc節點IP時時延較長,此時Tinc網絡正在協商路由,過一段時間后再嘗試發現時延與直接 ping 相差無幾,證明 Tinc 是支持 P2P 的。 一分鐘不到的 ping 值: 該文章在 2021/3/26 0:44:38 編輯過 |
關鍵字查詢
相關文章
正在查詢... |