1。 client-----firewall------serverhtml
當Firewall與Server之間的Tcp鏈接在一段時間(如10分鐘)內沒有任何應用層的消息通過時,Firewall可能會主動斷開與Server之間的Tcp鏈接,可是Client與Firewall之間的鏈接一直是有效的。這種狀況下,Server覺得Client已經斷開鏈接了,而Client卻覺得本身和Server之間的鏈接還保持着。
這個後續須要注意測試。web
2. 假設防火牆只開放80 端口。ide
A--firewall-B測試
A要telnet到B,使用http tunnel: 將數據封裝在能夠經過的報文中,到對端再去解封裝。spa
在A機器上起一個tunnel的client端,讓它偵聽本機的一個不被使用的任意指定端口,如1234,同時未來自1234端口上的數據指引到遠端(B機)的80端口上(注意,是80端口,防火牆容許經過),而後在B機上起一個server,一樣掛接在80端口上,同時指引80端口的來自client的轉發到本機的telnet服務端口23,這樣就ok了。如今在A機上telnet本機端口1234,根據剛纔的設置數據包會被轉發到目標端口爲80的B機,由於防火牆容許經過80端口的數據,所以數據包暢通的穿過防火牆,到達B機。此時B機在80端口偵聽的進程收到來自A的數據包,會將數據包還原,再交還給telnet進程。當數據包須要由B到A返回時,將由80端口再回送,一樣能夠順利的經過防火牆。server
http://www.http-tunnel.com/html/htm
3.進程