如何訪問路由器後面的專用網路?無法轉發
我在遠處的路由器後面有一個影片監控系統(一堆 IP 攝影機,帶有私有 IP)。該位置唯一可用的 ISP 為我提供了 3G/4G USB 加密狗(基本上是移動網際網路)。顯然,這個加密狗(連接到路由器)自己做了一些路由/魔法(並且不可配置),所以我不能使用路由器進行埠轉發(無論如何至少沒有幫助)。這意味著雖然攝影機可以訪問 Internet(因此可以將資訊推送給我),但我無法直接通過 Internet 訪問它們(因此基本上沒有實時資訊)。
我正在考慮通過在與 IP 攝影機相同的子網中放置一台低功耗電腦(軟體在這個問題中並不重要,但我將使用 Linux)來解決這個問題——我們稱這台電腦為 A;我還租用了一個可通過 Internet 公開訪問的 VPS - 我們稱之為 B。
我認為這個設置應該讓我能夠解決我的實時提要的問題。至少從概念上講,如果我讓 A 打開通往 B 的隧道,那麼通過 BI 應該可以訪問 A 的網路。
假設上述工作(我不明白為什麼不工作,但是..這就是我要問的原因)你們能推荐一個可以盡可能輕鬆完成上述工作的系統嗎?我的意思是..我應該設置一個VPN,A作為VPN客戶端,B作為VPN伺服器;那麼任何想要查看攝影機的人都只需連接到安裝在 B 上的 VPN 伺服器嗎?
我認為這應該可行,但也許有比在我要檢查攝影機的每台電腦上設置 VPN 更簡單的方法。
我對軟體沒有直接興趣(我確定它存在並且我會設法配置它),而是網路概念。
理想的情況是我將在(例如)埠 8080 上連接到 B,並且流量將自動從 B 通過隧道路由到 A,此時 A 將通過該連接提供從攝影機“1”獲得的數據; 然後是來自攝影機“2”的 8081,依此類推。
假設 VPS 也執行 Linux,我會設置一些從 A 到 B 的 SSH 隧道,其中 B 充當網關。這樣,您可以告訴 B 偵聽埠 8080,該埠對應於 IP 攝影機一的 IP
因此,從 A 框中,使用這些參數執行 ssh
ssh -nNT -R 8080:ipcam1:<ipcamport> -R 8081:ipcam2:<ipcamport> <VPS IP>
希望您的 VPS 有一個靜態 IP 地址。
還希望您可以完全控制您的 VPS,因為您需要修改 SSH 守護程序以啟用
GatewayPorts
以允許其他電腦通過 B 連接到 A。在 Debian 中,GatewayPorts 選項在
/etc/ssh/sshd_config
.在該文件的末尾添加
GatewayPorts yes
就足夠了,然後重新啟動 ssh 守護程序以使更改生效。