史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   網路軟硬體架設技術文件 (http://forum.slime.com.tw/f133.html)
-   -   接入LAN即可使用的UPnP究竟為何物? (http://forum.slime.com.tw/thread118326.html)

psac 2004-07-25 09:59 PM

接入LAN即可使用的UPnP究竟為何物?
 
以前,要將路由器接到LAN上使用是一件相當麻煩的事。IP位址及子網路遮罩的設定非常複雜,而且非常難以下手。從過濾到位址轉換的種種設定,能把人累得半死。為了改變這種狀況,通用即插即用(Universal Plug and Play:UPnP)技術應運而生。如果支持UPnP,就可以將複雜的網路設定改為自動設定。最近,支持UPnP的路由器及列印機陸續亮相,而且該技術還將擴展至其它設備。但是,也許有的讀者並不瞭解UPnP的功能和結構。下面,就讓我們走近看一下UPnP。

  首先,簡單地說明一下UPnP為何物。所謂UPnP是將相關設備連入個人電腦時使用的即插即用(Plug and Play:PnP)接頭擴展到網路中使用。如果是支持UPnP的設備,它可以檢測到新接入網路的支持UPnP的設備,並可以自動將其設定為可使用狀態。比如,用戶將新買回的支持UPnP的網路列印機與LAN相連接,LAN上的個人電腦可以檢測到該列印機,並可以自動將電腦設定為可以使用新接入的列印機進行列印。

  看了以上的說明,用戶也許會認為其中使用了一種非常複雜的獨有技術。但實際上,UPnP是在英特網及LAN中日常使用的以TCP/IP傳輸協定為基礎的技術。

  首先,在支持UPnP的設備接入LAN時,它可以自動設定IP位址等。在這方面,使用了DHCP(dynamic host configuration protocol)。關於DHCP,可能有很多讀者通過設定個人電腦的TCP/IP而對其有所瞭解。通過DHCP分配到IP位址之後,下一步可以通知LAN上的其它設備其自身已經接入LAN。這裡使用的傳輸協定為UDP(user datagram protocol)。UDP也是一種可以用於英特網的資料流廣播電視及VoIP(voice over IP)等的傳輸協定。使用UDP,可以通過多點傳送(Multicast)向LAN上所有支持UPnP的設備傳送新設備接入的通知。UPnP的接頭號碼使用的是1900號。傳輸層的資料交換使用的傳輸協定是由標準化團體UPnP Forum制定的獨自標準SSDP(Simple Service Discovery Protocol)。

  接下來便進入新接入的設備和此前已經接入的設備之間交換詳細資料的階段。實際上,在這種狀態下交換資料時,在Web服務和瀏覽器之間的通信中使用的HTTP(Hypertext Transfer Protocol)照常使用。但是,製造商名稱、機型、功能、控制指令等使用HTTP傳送的資料模式不是使用HTML(Hypertext Markup Language),而使用XML(Extensible Markup Language)。XML是作為HTML的新一代版本而開始用於各種用途的表述語言。

  此外,關於網路列印機紙張用完等狀態出現變化之時的交換,使用的是HTTP的擴展傳輸協定GENA(General event Notification Architecture),在控制設備時交換XML資料使用的傳輸協定為SOAP(Simple Object Access Protocol)。

  如此說來,便可得知所謂的UPnP這項新技術是現有技術的集合。您大概曾在哪裡聽說過DHCP、HTTP、XML等名稱吧?雖然這其中也有SSDP、GENA、SOAP等不太一般的技術,但這也是現有技術的擴展。

  將現有的技術組合起來提供新的功能,UPnP算得上是這方面的代表。

簡峇@即插即用英文是Universal Plug and Play,縮寫為UPnP。要說電腦外設的即插即用(Plug and Play(縮寫PnP)),大家可能很熟悉,但對統一即插即用,多數人會感到是一頭霧水。由於windows xp加入對UPnP的支持,並且被查出存在很嚴重的安全問題,所以,一時間,使得UPnP名聲大噪。巧的是,本人原來查閱過關於UPnP的技術白皮書,而且也較為詳細地看了關於此次發現的安全缺陷的介紹。因此,趁著這個機會,將UPnP以及引起安全缺陷的詳情披露出來。

一、 UPnP是用來幹什麼的?

  網路發展到現在,已經可以使我們在網上衝浪、收發郵件、聽到遠方傳送來的聲音、搜尋感興趣的內容、下載軟體、點播節目、即時聊天等等、等等……實現的功能好像已經不少,但,人的慾望無止境,享福人還想更享福,還有許多目標沒有達到:例如,怎樣才能使我們在網路上,像平時用遙控器那樣,操作空調器、電風扇、廚房電器,或網路遠端的電器設備呢?如何利用網路上的電腦資源,使這種「遙控」更具智能化?甚至,將一系列相關的控制寫到一個指令碼中,以便用戶定制自己所喜愛的控制流程?……等等。實現諸如此類的效果,將是有巨大需求的套用技術。如果實現通過網路用UPnP控制家用設備,將給我們的生活帶來很大的方便和很多新的體驗。例如:

  1.你在下班之前,或在回去的路上,就可以先開啟家裡的空調器和廚房設備,等進入家門,立刻就是一個溫度宜人的環境--廚房裡的飯也做好了。房間溫度的高低和廚房內煮飯的程序,都是根據事先設計好的「指令碼」程序進行的,絕對可靠。
  2.你若是一位上等級的音樂發燒者,肯定對聆聽音樂的環境要求很嚴:音箱位置高低、音量大小、燈光明暗、窗簾拉不拉上都有講究。手動控制隨好,畢竟不方便。你要使用上UPnP,一切都會為你代勞。還能將你習慣的音響音量、燈光亮度、音箱的高度等等,以你認為最佳的參數寫到執行指令碼中,以後可以都以此為準。如果你擁有自己的專門聽音室,只要你開啟聽音室的門,上述的環境就會立刻設定好。曲終人散,只管放心離開好了,UPnP系統會自己關閉音響,熄滅電燈,拉上窗簾。
  3.你人在辦公室,心裡卻放不下家裡的孩子。用上UPnP,只要在家裡安裝攝像頭,建立好與網路的連接。在辦公室內,啟用桌面電腦的WE變態V,連通網路後,可以即時監視孩子在家裡的一舉一動。

  凡此種種的方便和誘人之處還很多,不勝枚舉。

  其實,這已經不是科學幻想、也不是專家預言。目前用UPnP傳輸協定就可以實現這些操作!這正是windows xp系統急於加入UPnP的原因。正因為UPnP是一個傳輸協定,UPnP的使用可跨越各種操作系統平台,開發應用程式也沒有開發語言的局限。可工作於各種形式的網路結構。且僅以現在的網路設施為基礎,僅僅加上這個UPnP傳輸協定,既不用增加新的設施,也不用重新架設網路介質就可以投入使用!


UPnP傳輸協定具有下述特色:

  1. 以網路為套用環境,不考慮「孤島」中的電腦。
  2. 以TCP/IP和整個Internet為基礎。這樣是「中立」的,不依附於任何操作系統或應用程式,不使用特定的API函數,不受程序設計語言的局限。可以無縫地接入傳統網路。
  3. 設備可以動態地進入網路中,隨後獲得IP位址,「學習」 或搜尋自己應當進行的操作和服務的資訊;「感知」別的設備是否存在以及它們的作用和當前的狀態 。所有這些,都應當是可自動完成的。
  4. 每個設備都可讀取屬於自己的、特定的狀態和參數;完成控制操作後應當發出「操作完成」的回應信號。如果失敗,則應發出控制失敗的信號。

二、UPnP傳輸協定的層:

  UPnP傳輸協定的最終目的,是建立一個可用的設備模型, 因篇幅這裡不對整個結構進行詳細的分析,但你應當記住下面的主要特徵:

  1. UPnP是一個多層傳輸協定構成的框架體系,每一層都以相鄰的下層為基礎,同時又是相鄰上層的基礎。直至達到套用層為止。該圖中的最下面是就是IP和TCP,共兩層,負責設備的IP位址。
  2. 三層是HTTP、HTTPU、HTTPMU,這一層,大家應當是熟悉的,屬於傳送傳輸協定層。傳送的是內容都經過「封裝」後,存放在特定的XML文件中的。對應的SSDP、GENA、SOAP指的是儲存在XML文件中的資料格式。到這一層,已經解決了UPnP設備的IP位址和傳送資訊問題。
  3. 第四層是UPnP設備體系定義,僅僅是一個抽像的、公用的設備模型。任何UPnP設備都必須使用這一層。
  4. 第五層是UPnP論壇的各個專業委員會的設備定義層,在這個論壇中,不同電器設備由不同的專業委員會定義,例如:電視委員會只負責定義網路電視設備部分,空調器委員會只負責定義網路空調設備部分……,依此類推。所有的不同類型的設備都被定義成一個專門的架構或者範本,供建立設備的時候使用。可以推知,進入這一層,設備已經被指定了明確用途。當然,這些都必須遵守標準化的規範。從目前看,UPnP已經可以支持大部分的設備:從電腦、電腦外設,移動設備和家用消費類電子設備等等,無所不包,隨著這個體系的普及,將可能有更多的廠家承認這一標準,最終,可能演化為公認的行業標準。
  5. 最上層,也就是套用層,由UPnP設備製造廠商定義的部分。這一層的資訊是由設備製造廠商來「填充」 的,這部分一般有設備廠商提供的、對設備控制和操作的底層程式碼,然後,就是名稱序列號呀,廠商資訊之類的東西。

三、傳輸協定內部的詳細情況

  僅僅有這樣五層UPnP傳輸協定,也只不過有了一個共同遵守的框架,實際的UPnP系統究竟是如何構成的呢?

  完整的UPnP服務系統由支持UPnP的網路和符合UPnP規範的設備共同構成的。

  整個系統是由設備、服務、和控制游標三部分所構成。

  設備:
  這裡是指符合UPnP規範的設備。一個UPnP設備可以看成一個包含服務並嵌套了一般設備的「容器」 。例如,一個UPnP的VCR(錄像機)設備可以包含磁帶傳送服務、調諧服務和時鐘服務。就是說,UPnP之下的設備不能僅僅理解為硬體意義上的設備,而應當包括服務功能。

  不同種類的UPnP設備將關聯不同的設定、服務和嵌入設備。如列印機和VCR屬於不同用途的設備,服務就不可能定義成一樣的。

  服務:
  設備執行用戶請求的控制程序,可劃分成一個個很小的階段或服務機構,每個服務機構就稱為一個服務。每一個服務,對外都表現為具體的行為和模式,而行為和模式又可以用狀態和變數值進行描述。只要可以用數值描述,在電腦裡面就容易處理了。例如,模仿一個時鐘,它只有一個工作模式:這個模式就是模擬並顯示當前的時間。而一個時鐘的行為共有兩種(也只有兩種):

  1. 設定時間(用來「即平時說的對表」).
  2. 得到時間(用於顯示時間)。

  其它設備服務,也是用這樣思路來描述和定義的,一個設備也可以被定義多個服務。不論是設備的定義資訊和服務的描述資訊,都儲存在一個XML文件中,這個文件也是UPnP傳輸協定構成的一部分。當設備建立和使用服務的時候,XML文件可以與它們進行關聯。

  XML文件中還有一個很關鍵的「狀態表」,狀態表可進一步分為「服務狀態表」和「事件狀態表」。整個UPnP設備執行的全程序內,狀態表貫穿始終,當裝置狀態改變的時候,例如發生參數變化或狀態重新整理的時候,立即就在「狀態表」中反映出來。如控制伺服器在接收到設定時間的行為請求時,就立即執行請求(對時操作),並給出回應,同時更新狀態表中的有關資料。相應地,事件伺服器負責向對此事件感興趣的設備公佈所發生的狀態改變。例如,一個火災事件發生後,事件伺服器就向火災報警器發佈這個事件,導致報警器動作產生報警信號。

控制游標:
  在UPnP網路中,用戶請求設備執行的控制是通過控制游標實現的,控制游標首先是一個有能力控制別的設備的控制者,還要具有在網路中 「發現」控制目標的能力。在發現(控制目標)之後,控制游標應當:

  1取得設備的描述資訊並得到所關聯的服務列表。
  2取得相關服務的描述。
  3使用控制服務行為。
  4確定服務的事件 「源」,不論何時,只要服務狀態發生改變,事件伺服器會立即向控制游標傳送一個事件資訊。

  從上面說到的各種資訊,都儲存在XML文件中,不同用途的資訊,格式不同。保證可以各取所需,不會混淆。

  那麼,UPnP的完整工作程序是怎樣的呢?

  UPnP在控制游標和被控制設備之間提供通訊功能。而網路介質、TCP/IP傳輸協定、HTTP僅提供基本的連接和IP位址分配。整個工作程序需要處理六個方面的內容,即位址分配、發現設備、對設備的描述、設備控制、設備事件、設備表達。

  位址問題:
  位址是整個UPnP系統工作的基礎條件,每個設備都應當是DHCP(Dynamic Host Configuration Protocol 動態主機配置傳輸協定)的客戶。當設備首次與網路建立連接後,利用DHCP服務,使設備得到一個IP位址。這個IP位址可以是DHCP系統指定的,也可以是由設備選項的,當然,有能力自己選項IP位址的設備,必然是那些「聰明」的設備才行!這也就是所謂的「自動」IP位址。

  如果遇到本機DHCP管理範圍之外的IP位址請求,還需要解決「友好設備」

  的位址分配問題,這個問題通常由域名伺服器來解決。

  發現設備:
  可分成兩種情況,一種是在有控制請求之後,在當前的網路中搜尋有無對應的可用設備;另一種情況是某一設備接入網路、取得IP位址之後,就開始向網路「廣播」自己已經進入網路,即尋找控制請求。

  設備的描述:
  簡單說,這是宣告「自己」是什麼樣的設備,例如名稱、製造廠商、序列號碼等等。剛開始「發現」設備後,控制游標對這個設備的「瞭解」還很少,需要依據ULR找到該設備的描述文件,從這些文件中讀取更多的描述資訊。描述資訊的範圍很廣,一般都是由設備的製造廠商提供的。主要的描述項目有:控制的模式名稱和模式號碼、設備序列號、製造廠商名稱、廠商的WEB的ULR……等等。這些一般都存放在特定的XML文件中;

設備控制:
  控制游標找到設備描述之後,會從描述中「提煉」出要進行的操作並獲悉所有的服務;對每個UPnP設備來說,這些描述必須是很確切、很詳細的,描述中可能包含有指令或行為列表、服務回應資訊、用到的參數等等。對於服務的每個行為,也伴有描述資訊:主要是整個服務進行期間的變數、變數的資料類型、可用的取值範圍和事件的特徵。

  要控制某個設備,控制游標必須先傳送一個控制行為請求,要求設備開始服務,然後再按設備的ULR傳送相應的控制消息,控制消息就是放置在XML文件中的那些SOAP格式的資訊。最後,服務會返迴響應資訊,指出服務是成功或是失敗。

  設備事件:
  在服務進行的整個時間內,只要變數值發生了變化或者模式的狀態發生了改變,就產生了一個事件,系統將修改上述提到的事件列表的內容。隨之,事件伺服器把事件向整個網路進行廣播。另一方面,控制游標也可以事先向事件伺服器預約事件資訊,保證將該控制游標感興趣的事件及時準確地傳送過來。

  廣播或預約事件,傳送的都是事件消息,事件消息也放在XML文件中,使用的格式是GENA。

  設備投入工作之前的準備---啟始化程序,也是一個事件,啟始化需要的各種資訊也是用事件消息傳送的。包括的內容主要是:變數初始值,模式的初始狀態等等。

  設備表達:
  只要得到了設備的ULR,就可以取得該設備表達頁面的ULR,然後可以將此表達納入用戶的本機瀏覽器上。這部分還包括與用戶對話的界面,以及與用戶進行會話的處理。

  整個UPnP系統,是在「中樞神經」的指揮下協同工作的。其大致情形如下:

  凡是具備IP位址的的設備都必須直接使用網路的IP位址,但有些設備可能並不具備直接使用網路IP位址的能力,例如,電燈開關的控制就是這樣,這是非IP設備;非IP設備通過網路橋接(UPnP Bridge)來與控制游標交換資訊。

  直接使用IP位址的有:控制游標(可在口袋電腦和遠端設備上發出控制)、本機設備,例如VCR和時鐘;以及網路橋接。非IP設備有所謂輕設備(如溫度控制器)和非UPnP的設備(如電燈控制開關等)。

上述介紹屬於硬體方面,下面再說作為控制靈魂的軟體:

  在上面的敘述中,多次提到用XML文件存放需要的資訊,因為無論是控制游標或設備服務,都需要很多資訊,有讀出的,有傳出的,UPnP傳輸協定約定這些都存放在特定的文件XML中。用途不同的資訊,在XML文件中的格式不同。所以,相關的XML文件是控制服務的靈魂。

四、關於UPnP隱藏的安全缺缺陷:

  這次發現的安全缺陷共有兩個,其中第一個缺陷是對緩衝區(Buffer)的使用沒有進行檢查和限制。外部的攻擊者,可以通過這裡取得整個系統的控制特權!由於UPnp功能必須使用電腦的連接阜來進行工作,取得控制權的攻擊者,還有可能利用這些連接阜,達到攻擊者的目的。這個缺陷導致的後果很嚴重,不論那個版本的windows 系統,只要執行UPnP,就都存在這個危險!但嚴格地說,這並不完全是UPnP技術本身的問題,更多的是程序設計的疏忽。

  第二個缺陷就與UPnP的工作機理有關係了!

  該缺陷存在於UPnP工作時的「設備發現」階段。發現設備可以分為兩種情況:如果某個具備UPnP功能的電腦引導成功並連線到網路上,就會立刻向網路發出「廣播」,向網路上的UPnP設備通知自己已經準備就緒,在程序設計這一級別上看,該廣播內容就是一個M-SEARCH(消息)指示。該廣播將被「聲音所及」範圍之內的所有設備所「聽到」。並向該電腦反饋自己的有關資訊,以備隨後進行控制之用。

  相類似,如果某個設備剛剛連線到網路上,也會向網路發出「通知」,表示自己準備就緒,可以接受來自網路的控制,在程序設計這一級別上看,該通知就是一個NOTIFY(消息)指示。也將被「聲音所及」範圍之內的所有電腦接受。電腦將 「感知」該設備已經向自己「報到」。實際上,NOTIFY(消息)指示也不是單單傳送給電腦聽的,別的網路設備也可以聽到。

  就是在上述的一播一聽之間,出現了問題!

  如果某個黑客向某個用戶系統傳送一個NOTIFY(消息)指示,該用戶系統就會收到這個NOTIFY(消息)指示並在其指示下,連線到一個特定伺服器上,接著向相應的伺服器請求下載服務---下載將要執行的服務內容。伺服器當然會回應這個請求。UPnP服務系統將解釋這個設備的描述部分,請求傳送更多的文件,伺服器又需要回應這些請求。這樣,就構成一個「請求--回應」的循環,大量佔用系統資源,造成UPnP系統服務速度變慢甚至停止。所以,這個缺陷將導致「拒絕服務」攻擊稱為可能!

  結束語

  UpnP正在向我們一步步走近,現在已經是足聲可聞了。不久的將來,必然對我們的工作和生活產生巨大影響。也蘊含著無限商機。儘管現在存在問題,也難保以後就不會再出現新的問題,但這既然體現了人的需求意向,就會有巨大的生命力,暫時的挫折不會使得它停下前進的腳步!

附:這是本文出現的相關名詞解釋:

  傳送傳輸協定:
  主要用HTTP 、HTTPU和HTTPMU:

  HTTP:
  這是大名鼎鼎的東西,不用多說,但就UPnP系統來說,HTTP及其派生傳輸協定都屬於核心部分。

  HTTPU和HTTPMU:
  這些都是從HTTP傳輸協定中派生定義出來的。主要用於傳送SSDP格式的設備消息。

  SSDP:
  是一個「簡單服務發現傳輸協定」 ,即英文「Simple Service Discovery Protocol的縮寫」 , 該傳輸協定定義了如何在網路上發現網路服務的方法。SSDP也規定了存放在XML文件中的資訊格式。SSDP資訊的傳送是依靠HTTPU和HTTPMU進行的。不論是控制游標,或是UPnP設備,工作中都必然用到SSDP,設備接入網路之後,要利用它向網路廣播自己的存在(廣播的資訊中還有設備位置的描述),以便儘快與對應的控制游標建立聯繫;控制游標則利用SSDP來搜尋自己將要控制的設備在哪裡?並且可以排除已經存在的設備和控制游標--只為新近的或尚未「聯絡」上的雙方服務。

  控制游標利用SSDP的方式是經由HTTPU發出搜尋請求,這種請求可以很詳細,能具體到需要什麼樣的設備以及何種服務。例如:請求對特定的VCR機進行設定時鐘的服務。

  設備利用SSDP的方式是「收聽」來自網路連接阜的消息,從中發現與自己匹配的資訊,一旦找到與自己匹配的資訊,經由HTTPMU來傳送一個回應資訊到控制游標。

  GENA:
  這是事件消息採用格式,是所謂「普通時間通知體系Generic Event Notification Architecture」的縮寫。關於事件消息,在上面已經有介紹。

  SOAP:
  即簡單對像訪問傳輸協定,實際就是通過該傳輸協定傳遞控制消息並返回設備對消息的回應結果。它利用XML和HTTP進行遠端使用。使用防火牆或別的網路安全措施不會影響SOAP的使用。

  每個UPnP控制請求都可作為一個SOAP控制消息,控制消息中還包含有控制行為描述和所用到的參數。

(責編:一怒拔劍)

psac 2004-07-25 10:20 PM

DI-704P支持UPnP嗎?
什麼是UPnP呢?

問:什麼是 UpnP?答:通用即插即用 (UPnP) 是一種用於 PC 機和智能設備(或儀器)的一般對等網路 連接的體系結構,尤其是在家庭中。


UPnP 以 Internet 標準和技術(例如 TCP/ IP、HTTP 和 XML)為基礎,使這樣的設備彼此可自動連接和協同工作,從而使網 絡(尤其是家庭網路)對更多的人成為可能。D-Link 704P在固件V2.70版以後支持UPnP功能。


問:UPnP 對消費者意味著什麼?答:簡單、更多選項和更新穎的體驗。


包含通用即插即用技術的網路產品只需實 際連到網路上,即可開始正常工作。實際上,UPnP 可以和任何網路媒體技術(有 線或無線)協同使用。


舉例來說,這包括:Category 5 乙太網電纜、Wi-Fi 或 802.11B 無線網路、IEEE 1394 ("Firewire")、電話線網路或電源線網路。

當這些設備 與 PC 互連時,用戶即可充分利用各種具有創新性的服務和應用程式。


問:什麼是 UPnP 論壇?

答:「通用即插即用論壇」是一個開放式業界協會,成立於 1999 年 6 月,旨在幫 助定義 UPnP 標準以簡化家庭(長遠上講則是企業)智能設備的連網。為實現上述 目標,該論壇正在制定和公佈 UPnP 設備控制傳輸協定及服務控制傳輸協定。


截止到 2001 年 6 月初,已有 350 多家公司成為 UPnP 論壇的成員。


UPnP 論壇受由 22 名成員 組成的 UPnP Steering Committee(UPnP 指導委員會)的管理。


此外還設立了技術委 員會、市場推廣委員會及各種工作委員會(分別面向某種特定的設備),旨在努力 實現該機構的目標。


有關論壇成員的列表及加入論壇的資訊,請見論壇 Web 站 點。


問:UPnP 的技術要素是什麼?

答:UPnP 範圍廣泛,原因是它面向的是家庭網路、臨近網路及小型企業和商住樓 中的網路。在網路控制設備的管理下,它支持任何兩個設備之間的資料通 訊。



UPnP 不依賴於特定的操作系統、編程語言或物理媒體。


UPnP 支持零配置網路及自動搜尋功能,這樣以來,設備即可動態加入網路,獲取 IP 位址,宣佈自己的名稱,根據需要提供功能,並瞭解其它設備的存在和功 能。

DHCP 和 DNS 伺服器為可選項。

只要在網路上可用,即可加以使用。此外, 設備還可自動平穩地脫離網路,而不會遺留任何不必要的狀態。 UPnP 汲取了 Internet 的成功之處並繼承了它的元件,包括 IP、TCP、UDP、HTTP 及 XML。


UPnP 中涉及了多供應商之間的協作,旨在建立標準的設備控制傳輸協定 (DCP)。


與 Internet 類似,這些傳輸協定以公告式線傳輸協定為基礎,表示為 XML 形式,且 通過 HTTP 進行通訊。


問:什麼是 NAT?為什麼使用它?

答:「網路位址轉換」是一種 Internet Engineering Task Force (IETF) 標準,用於允許 專用網路(使用專用位址範圍,例如 10.0.x.x、192.168.x.x、172.x.x.x)上的多台 PC 機或設備共享單個、可全局路由的 IPv4 位址。


經常使用 NAT 的一個主要原因就 是 IPv4(最新一代 Internet)位址的資源日漸緊缺。



在構成公用 Internet 與專用區域網路之間屏障的網路閘道設備中,可以使用 NAT。


當專 用區域網路的 IP 資料包經過網路閘道時,NAT 將把專用 IP 位址和連接阜號轉換為公用 IP 位址和連接阜號,從而跟蹤這些轉換以保持各個會話不變。


Microsoft? Windows? XP 和 Windows Me 操作系統中的「Internet 連接共享」及許多 Internet 網路閘道設備都使用 NAT,尤其是在通過 DSL 或電纜調製解調器連接寬帶網的情況下。


隨著越來越多 的家庭和小型企業將自己的 PC 機連接起來並共享 Internet 連接,NAT 的使用量正 急劇增加。


問:NAT 的問題在哪?

答:簡言之:NAT 會「瓦解」許多家庭或小型企業中日漸需要的最新型 PC 和家 庭網路技術,例如多玩家遊戲、既時通訊及其它對等服務。



如果在公用 Internet 上 使用專用位址或同時使用同一連接阜號,這些應用程式就會中止。

應用程式必須使 用公共位址,且每個會話都須使用唯一的連接阜號。大型機構有專門的 IT 人員來確 保其公司應用程式在 NAT 上正常使用,但較小的機構和消費者卻不具備這樣奢侈 的條件。

UPnP NAT Traversal 可以自動解決 NAT 給應用程式帶來的許多問題,使 之成為小型企業和消費者理想的解決方案。


問:誰提出的 NAT Traversal 解決方案?

答:NAT Traversal 解決方案是 UPnP IGD Working Committee 為制定 Internet 網路閘道設 備 (IGD) 規範所從事工作的一部分。

UPnP 的成員公司可以加入該委員會,也可以 只選項跟蹤其工作進展。


委員會的主席是 Intel 公司的 Prakash Iyer (prakash.iyer@intel.com)。許多公司,包括 Microsoft,D-Link,都在為此而努力。

問:是否有其它途徑來解決 NAT Traversal 的問題?如果有,為什麼將 UPnP 視為最佳選 擇?

答:是的,確實有其它途徑來解決此問題,但目前還沒有其它機制來作為解決該 問題的業界標準,從而能對消費者自動實現,而對開發人員則普遍可行。


其它方 案或者要求用戶進行人工干預,或者要求 Internet 網路閘道設備製造商進行專門的開 發,並要求軟體開發人員處理 NAT Traversal 對特殊應用程式的需要。因此,只有 UPnP 能解決該重大問題。



用戶的工作: NAT Traversal 的手工干預法要求用戶使用瀏覽器(PC 機上一種關於圖 形用戶界面的工具)或 PC 上的指令行界面工具來更改家中 Internet 網路閘道設備上的 某些設定。


儘管有些熱衷技術的用戶不會有很大困難,但許多用戶卻感到困難重 重。此外,許多用戶甚至不知道 NAT Traversal 問題正對其 Internet 服務的使用造 成干擾。


用戶可能想體驗一種多玩家遊戲或使用其它某些對等服務,卻發現由於 某種原因而無法連接。


這會導致用戶採取疑難排除步驟、尋求電話支持、感到不 滿,甚至以後不打算使用新的服務或不打算嘗試新的技術感受。


開發人員的工作: 為避免要求用戶手動解決此 NAT Traversal 問題,有些 Internet 網 關設備製造商已編寫出套用層網路閘道支持,並將其包含到設備中。該套用層網路閘道軟 件的設計思路是特殊的應用程式。


換言之,設備製造商將編寫和測試特殊的代 碼,自動使一個應用程式完成 NAT。如果該應用程式軟體進行了更新,則設備制 造商所編寫的套用層程式碼將必須重新進行更新和測試。


當只需要考慮幾個對等或 相關的應用程式時,這種一對一解決 NAT Traversal 問題的方式對於設備製造商而 言是可管理的,但它無法對數百或數千個應用程式伸展自如,這時不僅開發成本 高,並可能需要有關這些應用程式各自原理方面的知識。


解決該問題較好的方法 就是讓設備製造商為設備增加能理解 UPnP 的軟體或固件,然後讓其它設備和軟 件能利用同一技術與 NAT 設備進行通訊。現在只有 UPnP 能夠完成這種職責。


問:UPnP NAT Traversal 解決方案的作用是什麼?

答:支持 UPnP 的 NAT Traversal 可確保下列情況的實現: 多玩家遊戲對等連接既時通訊遠端協助(Windows XP 的功能之一) 對於 IHV 而言,該解決方案免去了編寫和維護套用層網路閘道 (ALG) 資料庫以通過 NAT 的必要。


它受 Windows XP 和 Direct Play(一種 Windows 編程資源)的支持, 因此為 DPlay 編寫的軟體應用程式將能自動對 NAT Traversal 使用 UPnP 解決方 案。



通過提供下列操作的方法,UPnP 論壇的 IGD 規範可進行自動 NAT Traversal:
瞭解公用 IP 位址列舉現有的連接阜映射增加和刪除連接阜映射指定映射的租用期

問:哪些製造商在實施 UPnP NAT Traversal 解決方案?


答:
目前,大多數大型網路閘道(DSL/電纜路由器)製造商都宣佈計劃從 2001 年(不遲 於 7 月份)在提供的產品中實施 UPnP NAT Traversal 解決方案。


其中包 括:Microsoft(WindowsXP 中)、Linksys、D-Link、Intel、Netgear and Buffalo Technology 及 Arescom。

其中的一些製造商已宣佈將為已擁有其設備的用戶提供固件或軟體昇級,從而為 支持 UPnP 的 NAT Traversal 提供支持。

問:用戶怎樣才能知道哪些 Internet 網路閘道設備支持 UPnP?

答:用戶可以查閱 Internet 網路閘道設備製造商的 Web 站點,或者閱讀產品包裝上的標 簽,以確定是否提供該功能。後面幾個月內,有些零售商將會知道這個情況。


在 未來的幾個月中,UPnP 論壇會提供一個 UPnP 徽標。製造商可以在自己的產品包 裝、營銷資料或產品上包含該徽標,以表明該產品滿足 UPnP 論壇的測試要求。 問:開發人員實施該方案時有哪些可用的資源?

答:資源有很多,範圍從白皮書到互操作性測試事件 (PlugFests)。

有關技術性的文 章,請訪問 http://www.upnp.org/resources.htm。

有關未來的重大事件, 請參閱 http://www.upnp.org/events.htm。

Microsoft 在 MSDN Online 上提 供有關 Windows XP 的開發人員資訊。

psac 2004-07-25 10:25 PM

Steps to Enable UPnP for Linksys BEFSR81 徹底解決MSN不能用語音的問題
Steps to Enable UPnP for Linksys BEFSR81:
Set up your router in accordance with the manufacturer's instructions, and reset all defaults.
Connect your computer's network cable directly to one of the LAN Ports on the router, or connect to the router wirelessly.
Open your browser, and in the Address bar, type the following IP address: http://192.168.1.1

http://www.vansunion.com/UploadFiles/2004314145411734.jpg


Figure 1

When you are finished typing the IP address (see the preceding illustration), press ENTER to establish a connection.
After the connection is established, you will be prompted to enter your user name and password (see the following illustration). Leave the User name box blank, and in the Password box, type admin

http://www.vansunion.com/UploadFiles/2004314145412580.jpg


Figure 2

Click OK to go to the Router Setup page (see the following illustration).

http://www.vansunion.com/UploadFiles...4145413621.jpg[/img]




Figure 3

To enable voice/video conversations, click the Password tab, and then, under UPnP Services, click Enable (see the following illustration).

http://www.vansunion.com/UploadFiles/2004314145413360.jpg


Figure 4

A status screen (as shown in the following illustration) appears to indicate that your router is now UPnP enabled and that your data is being saved for the UPnP feature.

http://www.vansunion.com/UploadFiles/2004314145414371.jpg

Figure 5

Your router is now ready to enable voice/video conversations with Windows Messenger!


所有時間均為台北時間。現在的時間是 01:25 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1