偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

TCP和UDP,你要知道的123 (TCP篇)

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理 數(shù)據(jù)中心
作為一名網(wǎng)絡(luò)運(yùn)維人員,熟悉TCP和UDP兩兄弟是必要的。TCP與UDP是隸屬于TCP/IP協(xié)議族的兩員大將,從TCP/IP誕生以來(lái)經(jīng)歷了幾十年的發(fā)展,可以這么說(shuō)不管世界如何變遷、無(wú)論滄海已變幾多桑田,管它傳統(tǒng)互聯(lián)網(wǎng)還是移動(dòng)互聯(lián)網(wǎng),都離不開(kāi)他們,現(xiàn)在,今后很長(zhǎng)一段時(shí)間都離不開(kāi)。

前言

作為一名網(wǎng)絡(luò)運(yùn)維人員,熟悉TCP和UDP兩兄弟是必要的。TCP與UDP是隸屬于TCP/IP協(xié)議族的兩員大將,從TCP/IP誕生以來(lái)經(jīng)歷了幾十年的發(fā)展,可以這么說(shuō)不管世界如何變遷、無(wú)論滄海已變幾多桑田,管它傳統(tǒng)互聯(lián)網(wǎng)還是移動(dòng)互聯(lián)網(wǎng),都離不開(kāi)他們,現(xiàn)在,今后很長(zhǎng)一段時(shí)間都離不開(kāi)。

即然取名123,就不想用過(guò)多的術(shù)語(yǔ)來(lái)解釋他們,我想通過(guò)我實(shí)際的案例來(lái)和大家一起探索門(mén)道。我們先談?wù)凾CP

TCP

TCP,全稱(chēng)Transmission Control Protocol,中文譯作傳輸控制協(xié)議。大家每天瀏覽的網(wǎng)頁(yè),不管是用手機(jī)還是電腦打開(kāi)的,均會(huì)使用TCP協(xié)議來(lái)傳輸數(shù)據(jù),TCP是面向連接的協(xié)議(稍后解釋?zhuān)?/p>

我們通過(guò)一個(gè)小案例來(lái)理解TCP。筆者租用過(guò)一臺(tái)云服務(wù)器,用來(lái)提供web(網(wǎng)頁(yè))服務(wù)。在所有配置完成后,發(fā)現(xiàn)從我的主機(jī)無(wú)法打開(kāi)服務(wù)器上的網(wǎng)頁(yè),打開(kāi)其它網(wǎng)頁(yè)則是正常的。

在講案例解決之前,我們先明確幾個(gè)關(guān)于TCP的概念:端口、三次握手。

端口:我們?cè)L問(wèn)網(wǎng)頁(yè),說(shuō)白了,其實(shí)是訪問(wèn)運(yùn)行在服務(wù)器上的一個(gè)應(yīng)用程序,而我們與應(yīng)用程序通信,就要用到端口。比如打開(kāi)網(wǎng)頁(yè)用的http協(xié)議,它默認(rèn)使用的80端口,https(http加密版本)默認(rèn)使用的443端口。

三次握手:TCP是面向連接的協(xié)議,比如打開(kāi)一個(gè)網(wǎng)頁(yè),你需要先和網(wǎng)頁(yè)服務(wù)器建立一個(gè)連接,而建立這個(gè)連接的過(guò)程,我們稱(chēng)為三次握手。

三次握手

三次握手

我通過(guò)抓包軟件(windows下使用wireshark,linux下使用tcpdump)獲取了三條報(bào)文數(shù)據(jù),我們來(lái)詳細(xì)分析一下。

  • ***條報(bào)文:192.168.253.4(主機(jī))向目標(biāo)ip為140開(kāi)頭的服務(wù)器的80端口發(fā)送標(biāo)志位(Flag)為SYN(Synchronize Sequence Numbers,同步序列號(hào))的報(bào)文。翻譯成白話(huà),主機(jī)告訴服務(wù)器,我要準(zhǔn)備和你的80端口通信了,把我要訪問(wèn)的網(wǎng)頁(yè)數(shù)據(jù)發(fā)給我。(***次握手)
  • 第二條報(bào)文:服務(wù)器發(fā)送標(biāo)志位為SYN,ACK(Acknowledge,確認(rèn)位)的報(bào)文返回給主機(jī)。意思是,服務(wù)器收到主機(jī)發(fā)過(guò)來(lái)的連接請(qǐng)求了,你再發(fā)過(guò)確認(rèn)報(bào)文過(guò)來(lái),我就把數(shù)據(jù)給你。(第二次握手)
  • 第三條報(bào)文:主機(jī)發(fā)送標(biāo)志位為ACK的報(bào)文給服務(wù)器。說(shuō)白了,就是主機(jī)告訴服務(wù)器,收到你要我發(fā)確認(rèn)信息的報(bào)文,現(xiàn)將確認(rèn)標(biāo)志發(fā)你。(第三次握手)
  • 當(dāng)服務(wù)器收到第三條報(bào)文后,主機(jī)和服務(wù)器的連接就算建立了(Established),再然后服務(wù)器就可以將網(wǎng)頁(yè)的數(shù)據(jù)傳送給主機(jī)并在主機(jī)的瀏覽器上展示內(nèi)容。

有了概念的了解,我們開(kāi)始處理問(wèn)題,首先要確定我和服務(wù)器之間的通信是否存在問(wèn)題,最簡(jiǎn)單的方式是使用ping 服務(wù)器ip命令測(cè)試,發(fā)現(xiàn)和服務(wù)器之間的通信是ok的。

然后在服務(wù)器上(centos 7)通過(guò)netstat -na命令查看80端口(網(wǎng)頁(yè)服務(wù)標(biāo)準(zhǔn)端口)是否開(kāi)啟,發(fā)現(xiàn)也沒(méi)有問(wèn)題。

網(wǎng)絡(luò)是通的,應(yīng)用服務(wù)也正常,卻打不開(kāi)服務(wù)器網(wǎng)頁(yè)。還是使用wireshark查看通信的過(guò)程,確認(rèn)到底是哪一步出現(xiàn)了問(wèn)題。

問(wèn)題報(bào)文

不要被圖中的英文嚇到,我們只需要關(guān)注幾個(gè)地方,就能定位這個(gè)故障的問(wèn)題。我們一步一步來(lái)。

前文提過(guò),http使用tcp協(xié)議傳輸數(shù)據(jù),tcp協(xié)議要求任何一方要和另一方通信需要先建立連接,也就是三次握手。

而在上圖中,仔細(xì)看,只有主機(jī)(192.168.88.127)發(fā)給140服務(wù)器的標(biāo)志位為SYN的報(bào)文,但沒(méi)收到服務(wù)器返回的報(bào)文。因?yàn)橹鳈C(jī)沒(méi)有收到服務(wù)器的返回報(bào)文,自動(dòng)啟用了重傳機(jī)制,連續(xù)又發(fā)了好幾次標(biāo)志位為SYN的報(bào)文給主機(jī),其實(shí)就是請(qǐng)求建立連接,但都是肉包子打狗--有去無(wú)回。一種可能是服務(wù)器應(yīng)用程序出現(xiàn)了問(wèn)題,沒(méi)有響應(yīng)。另一種可能是服務(wù)器壓根兒沒(méi)收到主機(jī)發(fā)送的建立連接報(bào)文。

因?yàn)槭孪任覀兇_認(rèn)了服務(wù)器應(yīng)用程序狀態(tài)是正常的,將排查重點(diǎn)放在服務(wù)器側(cè)接收?qǐng)?bào)文這一塊。在服務(wù)器側(cè)和主機(jī)側(cè)同時(shí)抓包,查看是否能抓到來(lái)自主機(jī)的報(bào)文。

  1. //服務(wù)器使用linux系統(tǒng),抓包使用tcpdump軟件,-port 80表示抓取端口為80的報(bào)文,src host表示抓源地址是192.168.88.127的報(bào)文,and表示要求同時(shí)滿(mǎn)足以上2個(gè)條件。 
  2. $ tcpdump -port 80 and src host 192.168.88.127 -nn 

通過(guò)抓包發(fā)現(xiàn),主機(jī)在發(fā)送建立連接請(qǐng)求時(shí),服務(wù)器沒(méi)有抓到任何來(lái)自于主機(jī)192.168.88.127訪問(wèn)服務(wù)器80端口的報(bào)文,也就是說(shuō)三次握手根本無(wú)法完成,更不要談數(shù)據(jù)傳輸了。因?yàn)橹皃ing命令又能從主機(jī)ping通服務(wù)器,表示網(wǎng)絡(luò)是通暢的。

這種情況下,很可能是防火墻策略阻檔了報(bào)文,立即檢查主機(jī)防火墻策略 。

  1. //centos 7環(huán)境下  
  2. $ systemctl status firewalld 

防火墻狀態(tài)

檢測(cè)防火墻狀態(tài)

發(fā)現(xiàn)防火墻的Active狀態(tài)為inactive(未激活),表示防火墻是未啟用的。那是什么阻止了報(bào)文呢,最終結(jié)果還是出在了防火墻策略上,是云服務(wù)器提供商提供的防火墻安全策略默認(rèn)阻止了外部訪問(wèn)80端口的請(qǐng)求,將策略修改為允許訪問(wèn)80端口后,終于順利和服務(wù)器建立了連接(三次握手)網(wǎng)頁(yè)正常打開(kāi)了。

TCP協(xié)議是TCP/IP協(xié)議族最重要的協(xié)議之一,搞清楚他的運(yùn)行機(jī)制,對(duì)于提高運(yùn)維工作的效率是有巨大幫助的。這篇短文,只是讓大家清楚TCP的概念和他的重要性,學(xué)習(xí)的道路是漫長(zhǎng)的,我們才剛剛上路。

 

責(zé)任編輯:武曉燕 來(lái)源: 今日頭條
相關(guān)推薦

2022-08-05 11:03:59

TCP 四次揮手三次握手

2022-07-07 09:00:17

TCP 連接HTTP 協(xié)議

2022-09-02 12:13:22

TCPUDP場(chǎng)景

2019-12-31 20:41:39

IPUDPTCP

2010-07-06 15:50:12

TCP和UDP協(xié)議

2013-05-27 10:48:16

TCPUDP傳輸協(xié)議

2020-07-28 08:38:10

TCPUDP協(xié)議

2018-10-08 10:14:10

TCPUDP

2020-08-03 08:10:52

UDPTCP通信

2023-10-24 15:22:09

TCPUDP

2017-10-16 13:45:04

2010-07-07 10:45:22

TCP UDP協(xié)議

2019-04-16 09:27:46

2010-09-06 09:43:46

TCPUDPAndroid

2010-07-07 10:42:36

TCP UDP協(xié)議

2010-07-07 11:02:26

TCP UDP協(xié)議服務(wù)

2013-08-01 10:01:02

網(wǎng)絡(luò)協(xié)議TCP協(xié)議UDP協(xié)議

2016-11-01 23:16:52

光纖光纖線纜

2014-12-03 14:05:01

TCPUDP

2020-01-13 10:16:53

TCPUDP協(xié)議
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)