透過防火牆或 NAT 路由器使用 iChat
摘要
透過 NAT 路由器和防火牆使用 iChat 時,必須開啟特定的傳輸埠,才能允許在防火牆之後進行視訊和音訊會議。 某些裝置會根據預設開啟這些傳輸埠,而其他裝置則需要設定。 附註:本文章會列出 iChat 使用的所有傳輸埠,而非只列出由音訊/視覺內容所使用的傳輸埠。 《Apple 軟體產品使用的「知名」TCP 和 UDP 連接埠》列出各個連接埠的功能。
受影響的產品
iChat
網路位址轉譯 (NAT)
某些 Internet 服務供應商 (ISP) 和家用網路路由器,會使用稱作網路位址轉譯 (NAT) 的技術來共享 Internet 連線。 雖然這經常會干擾其他會議應用程式的視訊和音訊連線,但是 iChat 會使用創新的方法來建立直接的音訊和視訊連線,即使在使用 NAT 的網路上也可建立連線。事實上,iChat 可正常搭配許多普遍的家用路由器,直接依照路由器的出廠設定即可使用。 本文列出這些路由器。
關於防火牆
因為防火牆的功用是阻擋特定 Internet 流量進入或離開網路,所以企業和教育機構經常使用防火牆來提升安全性。 Mac OS X 也包含個人用的防火牆,您可在 [系統偏好設定] 的 [共享] 偏好設定中將其啟動。
Internet 流量會穿越以服務識別號碼 (又稱為傳輸埠) 為基礎的防火牆。 必須先開啟特定的傳輸埠,才能執行 iChat。 網路管理者通常會開啟最少的網路傳輸埠,允許批准之應用程式的流量進入和離開網路,同時阻擋其他的網路流量。
iChat 會針對不同用途使用不同傳輸埠。 進行會議時,會使用傳輸埠 16384 到 16403 來傳送、接收和最佳化 AV 串流。 進行單一會議時,會利用 20 個傳輸埠當中的 4 個來傳送和接收音訊及視訊。 此外,還會使用傳輸埠 5060 來發出訊號和啟動 AV 聊天邀請,並將 5678 用於 SNATMAP,共開啟 22 個傳輸埠。 用於其他用途 (例如 Bonjour 和檔案傳送) 的傳輸埠,則會列在接下來的兩個章節當中。
Tip: 通過傳輸埠的流量可能會再細分為不同類型,包括 TCP 和 UDP。 iChat 會使用上述兩者,但主要使用的是 UDP。 進階使用者可在以下的「附註」區段中找到更多相關資訊。
開啟用於 Mac OS X 防火牆的傳輸埠
使用內建 Mac OS X 防火牆時,您只需要開啟下列傳輸埠:5060、5190、5297、5298、5678 以及 16384 到 16403。如果要在 Mac OS X 10.4 或以上版本中使用 Jabber,請一併開啟 5220、5222 和 5223。
Tip:如果您不想這麼麻煩,解決方法就是暫時關閉每台電腦上的防火牆。
若要在啟用 Mac OS X 防火牆的情況下進行聊天,請遵循這些步驟來新增必要的傳輸埠:
- 從蘋果選單中,選擇系統偏好設定。
- 從檢視選單中,選擇共享。
- 按一下 [防火牆] 標籤頁。
- 按一下 [新增]。
- 從 [傳輸埠名稱] 彈出式選單中,選擇 [其他]。
- 在 Mac OS X 10.3.9 或更早版本的 [埠號]、[範圍] 或 [級數] 欄位中,輸入下列資訊,然後前往步驟 7:
5060, 5190, 5297, 5298, 5678, 16384-16403
在 Mac OS X 10.4 或以上版本的 [TCP 埠號] 欄位中,輸入 (如果未使用 Jabber,則可以省略 5220、5222 和 5223):
5190, 5220, 5222, 5223, 5298
在 [UDP 埠號] 欄位中,輸入:
5060, 5190, 5297, 5298, 5353, 5678, 16384-16403 - 在 [描述] 欄位中,輸入:iChat
- 按一下 [好]。
開啟用於協力廠商防火牆的傳輸埠
如果您使用協力廠商的防火牆,請務必開啟這些傳輸埠:
5060、5190、5297、5298、5353、5678 以及 16384 到 16403。
如果無法運作,您可以開啟從 1024 到 65535 的所有傳輸埠 (或暫時停用防火牆)。
進階設定資訊
更複雜的路由器和防火牆可能會允許您指定規則,如 TCP/UDP、傳入/傳出封包或來源/目標傳輸埠等。 在此情況下,您可以使用下列表格。 設定 A 的安全性低於設定 B,但是可與較大範圍的路由器設定搭配使用。
設定 A
| 內部來源傳輸埠 | 外部目標傳輸埠 |
| 5060, 5190, 5220, 5222, 5223, 5297, 5298, 5353, 5678, 16384-16403 | 1024-65535 |
| 外部來源傳輸埠 | 內部目標傳輸埠 |
| 1024-65535 | 5060, 5190, 5220, 5222, 5223, 5297, 5298, 5353, 5678, 16384-16403 |
設定 B
Outgoing Packets
| Internal Source Port | 外部目標傳輸埠 |
| 5060, 5190, 5220, 5222, 5223, 5297, 5298, 5353, 16384-16403 | 5060, 5190, 5297, 5298, 5353, 5678 16384-16403 |
Incoming Packets
| 外部來源傳輸埠 | Internal Destination Port |
| 5060, 5190, 5220, 5222, 5223, 5297, 5298, 5353, 5678 16384-16403 | 5060, 5190, 5297, 5298, 5353, 16384-16403 |
其他資訊
附註
- 除了傳輸埠 5190 和 5298 之外,所有的 iChat 流量皆為 UDP,因此 5190 和 5298 在使用 TCP 和 UDP 時皆必須開啟,而 5220、5222 和 5223 只需要在使用 TCP 時開啟。
- 傳輸埠 5297、5298 和 5353 僅用於本機流量。 在電腦而非路由器上執行防火牆軟體時,可能需要開啟這些傳輸埠。 您不需要在連線至 Internet 的寬頻全球區域網路上開啟這些傳輸埠。
- 在 [共享] 偏好設定窗格中出現的 Mac OS X 防火牆,只會過濾 Mac OS X 10.3.9 或更早版本的 TCP 封包。 因此,大部分在此列出的傳輸埠都不需要在 Mac OS X 防火牆上開啟。
- 某些路由器的專屬功能或設定可能會干擾 iChat。 這包含將傳輸埠對應到各端、SIP 重新寫入、SIP 投遞或媒體傳輸埠的動態開啟。
- 如果是有關傳輸檔案的防火牆問題,請參閱《iChat:啟用防火牆時無法收發檔案》。
- 連接埠 5678 上的 SNATMAP 服務是用來決定主機的外部 Internet 位址,使 iChat 使用者之間的連線能夠在網路位址轉譯 (NAT) 下正常運作。SNATMAP 服務只是將已連接的 Internet 位址傳給用戶端。此服務在 Apple 伺服器上執行,但不會將個人資訊傳送給 Apple。使用某些 iChat 功能時會連接此服務。 阻擋此服務會造成 iChat 與 NAT 網路上的主機進行連線時發生問題。