• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            旅途

            如果想飛得高,就該把地平線忘掉

            網絡基礎知識講座:初步了解隧道技術

             現在的計算機領域越來越依賴于各種類型的隧道技術。所有的遠程接入VPN(虛擬專用網)都要用隧道,你還經常聽到計算機狂人們在談論SSH(安全 Shell)隧道。利用隧道技術你可以完成許多令人驚訝的工作,所以請舒舒服服地坐好吧,愉快地享受這一期關于隧道技術及其用途的知識講座。如果你想了解 IP安全協議(IPSec)的具體情況,我們會在以后的基礎知識講座中闡述。

              隧道技術的主要作用是讓一種網絡不支持的外來協議通過該網絡。隧道協議可以讓你利用諸如IP等協議通過IP數據包的“數據”部分發送另一種協 議。大多數隧道協議作用在第4層,這就意味著這些協議可以用來代替TCP(傳輸控制協議)或UDP(用戶數據報協議)等協議的功能。

              VPN隧道技術允許遠程客戶通過隧道進入我們的網絡,這一點證明了早前關于隧道被用于那些“不受支持協議”的觀點,盡管該作用并不顯而易見。如 果我們要通過VPN才能實現打印機和文件共享,那可能是因為端口139和445(Windows的配對端口)已被關閉,實際上對于我們的邊界路由器來說, 這兩個端口是不受支持的TCP端口。然而,如果在已知的VPN服務器上采用IPSec或PPTP(點對點隧道協議),那么一切就“都沒問題”了。

              被發往活動目錄(Active Directory)服務器端口445的數據包將被隱藏為VPN數據包。當這些數據包到達VPN服務器時,服務器會對數據包進行解包(demux,即de -multiplex,也被稱為disassemble),然后將其發送到內部網絡上。當數據包到達內部網絡時,其源地址現在就是VPN服務器的內部 IP,這樣內部網絡做出的響應就能返回VPN服務器。除了這一點,數據包都會完全按照你的意圖行事。VPN服務器一收到響應,就會給該數據包添加VPN頭 并封裝起來,然后通過其外部接口把它發回給你。

              關于VPN隧道要注意幾個有意思的地方:一旦你的數據到達內部網絡,它就已經被解密;而當這些數據通過Internet時,會有一些特別的“東西”被加入到數據包中。

              有一點我們沒有提及,但是也許很明顯,那就是VPN協議在傳送你的數據包之前會為其加密。對于理解隧道概念這無關緊要,不過卻值得一提。注意這 種加密并不是端對端,也就是說你和服務器之間的通信不是真正安全的。當然你自己和你的網絡之間很安全,別人無法窺探,然而一旦數據包從VPN服務器出來, 就會再一次被解密。

              說到第二個有意思的地方,我們先來了解一下最基本的IP封裝原理。從概念上來說,我們是把數據包嵌套,更確切地說, 外部的IP數據包的數據部分要包含一個完整的IP數據包。很妙,是不是?這樣我們就解釋了IPIP隧道的概念:IP被包含在IP數據包中。

              

              圖1



              如圖1所示,IP數據包的數據部分包含了一個嶄新的IP數據包。除了加密,它與VPN隧道技術的作用是一樣的。當你的數據包頂端帶了個“附加的 包頭”時,你無法發送大量的數據,因為第一個IP頭就占用了20個節字。認識這一點非常重要,因為在采用隧道技術時會突然出現Path MTU(最大傳輸單元)問題。

              "建立SSH隧道"是一件很奇妙也很讓人費解的事,也就是采用SSH協議通過隧道傳送數據。X11程序(例如一個圖形用戶界面程序)如果需要連 接一個顯示終端。它可以非常輕松地通過SSH隧道傳送數據。X的客戶(例如彈出窗口程序)會試圖連接顯示器所在的工作站上的X服務器,如果你與一臺服務器 之間采用了SSH,并且各選項設置無誤,那么程序試圖連接X的信息將被通過隧道返回給你本地的計算機,解密后再傳送給你本機機上的X服務器。現在來試著建 立SSH隧道吧:執行“ssh-Y user@hostname.com”命令,然后一旦進入就運行firefox,它應該顯示在你的本地計算機上,而且是通過加密SSH隧道實現的。

              因為OpenSSH的能力很有趣,并且有助于我們理解隧道概念,所以我們來看看SSH另外兩個小技巧。

              你可以把到自己計算機上的一個端口的連接轉發給一臺遠程計算機,它將你的數據通過SSH隧道傳送,使之安全可靠。這看起來似乎沒什么用處,畢 竟,為什么我要把自己計算機上的端口發給另一臺計算機呢?要回答這個問題我們先要澄清一些概念。SSH轉發端口之前首先要偵聽本地端口是否有連接,當建立 連接后,SSH就把整個連接發送給遠程主機和端口,這是一個單端口VPN!

              例如:ssh -L80:workserver.com:80 user@workdesktop.com

              這條命令在本機與workdesktop.com計算機之間建立一個SSH連接,而與此同時也打開了你本地計算機上的端口80。如果你讓web 瀏覽器指向http://localhost,此連接就會通過SSH連接被發送至workdesktop.com,進而又發送至 workserver.com服務器的端口80上。這非常有益于從家里訪問那些僅存在于Intranet上的站點,而無需先連接至VPN服務器。

              最新的OpenSSH版本同樣支持SSH上的IP隧道技術。實際上,它也支持以太網(Ethernet),目的是將兩個以太網廣播域橋接在一 起;也就是通過SSH加密!在OpenSSH的隧道選項中,人們可以設置全功能的SSH-VPN隧道,使之在任何SSH網絡上都能實現。它在兩端都創建隧 道接口,而唯一需要手動配置的只是路由表。如果你想讓所有發往目的網絡的數據都通過加密隧道來發送,那么你只需為目的網絡增加一條路由,并把它指向SSH 自動創建的隧道接口。這確實是目前最無可爭議的VPN設置了。

              隧道也傳送其它協議。希望上述內容能夠讓你深入了解隧道技術,激發一點興趣,或者至少讓某些人不再覺得這種技術多么神秘。

              小結

              隧道技術用于在各種不同的網絡中發送不受支持的協議。

              通過隧道的數據、VPN或其它內容使數據包增大,所以每個數據包所發送的數據量減少。

              一般來說,通過SSH隧道發送數據是一種根據具體應用建立的VPN,然而最新版本的OpenSSH可實現一個完全成熟、無可爭議的VPN。

            posted on 2007-08-14 23:58 旅途 閱讀(686) 評論(0)  編輯 收藏 引用 所屬分類: 網絡技術

            精品国产乱码久久久久久人妻| 久久久婷婷五月亚洲97号色 | 久久人做人爽一区二区三区| 久久久91人妻无码精品蜜桃HD| 久久精品国产欧美日韩| 91精品婷婷国产综合久久| 久久久久亚洲AV成人网| 伊人 久久 精品| 久久青草国产精品一区| 久久婷婷五月综合97色| 精品无码久久久久国产动漫3d| 久久天天躁狠狠躁夜夜躁2014| 亚洲精品无码成人片久久| 欧美日韩久久中文字幕| 思思久久好好热精品国产| 久久99精品国产麻豆| 精品久久久久一区二区三区| 久久综合九色欧美综合狠狠| 中文成人无码精品久久久不卡| 久久国产高潮流白浆免费观看| 久久精品一区二区影院| 国产午夜福利精品久久| 欧美牲交A欧牲交aⅴ久久| 久久久久99这里有精品10 | 久久一区二区三区99| 亚洲av成人无码久久精品| 少妇无套内谢久久久久| 久久久精品久久久久影院| 久久人人超碰精品CAOPOREN| 久久精品二区| 精品久久久久一区二区三区 | 久久99久久无码毛片一区二区| 国产欧美一区二区久久| 激情五月综合综合久久69| 久久国产成人午夜aⅴ影院 | 久久久久国产精品麻豆AR影院| 亚洲AV无码久久寂寞少妇| 久久国产精品免费一区| 久久精品男人影院| 久久久久99精品成人片| 久久午夜免费视频|