成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

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

網絡 網絡管理 數據中心
作為一名網絡運維人員,熟悉TCP和UDP兩兄弟是必要的。TCP與UDP是隸屬于TCP/IP協議族的兩員大將,從TCP/IP誕生以來經歷了幾十年的發展,可以這么說不管世界如何變遷、無論滄海已變幾多桑田,管它傳統互聯網還是移動互聯網,都離不開他們,現在,今后很長一段時間都離不開。

前言

作為一名網絡運維人員,熟悉TCP和UDP兩兄弟是必要的。TCP與UDP是隸屬于TCP/IP協議族的兩員大將,從TCP/IP誕生以來經歷了幾十年的發展,可以這么說不管世界如何變遷、無論滄海已變幾多桑田,管它傳統互聯網還是移動互聯網,都離不開他們,現在,今后很長一段時間都離不開。

即然取名123,就不想用過多的術語來解釋他們,我想通過我實際的案例來和大家一起探索門道。我們先談談TCP

TCP

TCP,全稱Transmission Control Protocol,中文譯作傳輸控制協議。大家每天瀏覽的網頁,不管是用手機還是電腦打開的,均會使用TCP協議來傳輸數據,TCP是面向連接的協議(稍后解釋)。

我們通過一個小案例來理解TCP。筆者租用過一臺云服務器,用來提供web(網頁)服務。在所有配置完成后,發現從我的主機無法打開服務器上的網頁,打開其它網頁則是正常的。

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

端口:我們訪問網頁,說白了,其實是訪問運行在服務器上的一個應用程序,而我們與應用程序通信,就要用到端口。比如打開網頁用的http協議,它默認使用的80端口,https(http加密版本)默認使用的443端口。

三次握手:TCP是面向連接的協議,比如打開一個網頁,你需要先和網頁服務器建立一個連接,而建立這個連接的過程,我們稱為三次握手。

三次握手

三次握手

我通過抓包軟件(windows下使用wireshark,linux下使用tcpdump)獲取了三條報文數據,我們來詳細分析一下。

  • ***條報文:192.168.253.4(主機)向目標ip為140開頭的服務器的80端口發送標志位(Flag)為SYN(Synchronize Sequence Numbers,同步序列號)的報文。翻譯成白話,主機告訴服務器,我要準備和你的80端口通信了,把我要訪問的網頁數據發給我。(***次握手)
  • 第二條報文:服務器發送標志位為SYN,ACK(Acknowledge,確認位)的報文返回給主機。意思是,服務器收到主機發過來的連接請求了,你再發過確認報文過來,我就把數據給你。(第二次握手)
  • 第三條報文:主機發送標志位為ACK的報文給服務器。說白了,就是主機告訴服務器,收到你要我發確認信息的報文,現將確認標志發你。(第三次握手)
  • 當服務器收到第三條報文后,主機和服務器的連接就算建立了(Established),再然后服務器就可以將網頁的數據傳送給主機并在主機的瀏覽器上展示內容。

有了概念的了解,我們開始處理問題,首先要確定我和服務器之間的通信是否存在問題,最簡單的方式是使用ping 服務器ip命令測試,發現和服務器之間的通信是ok的。

然后在服務器上(centos 7)通過netstat -na命令查看80端口(網頁服務標準端口)是否開啟,發現也沒有問題。

網絡是通的,應用服務也正常,卻打不開服務器網頁。還是使用wireshark查看通信的過程,確認到底是哪一步出現了問題。

問題報文

不要被圖中的英文嚇到,我們只需要關注幾個地方,就能定位這個故障的問題。我們一步一步來。

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

而在上圖中,仔細看,只有主機(192.168.88.127)發給140服務器的標志位為SYN的報文,但沒收到服務器返回的報文。因為主機沒有收到服務器的返回報文,自動啟用了重傳機制,連續又發了好幾次標志位為SYN的報文給主機,其實就是請求建立連接,但都是肉包子打狗--有去無回。一種可能是服務器應用程序出現了問題,沒有響應。另一種可能是服務器壓根兒沒收到主機發送的建立連接報文。

因為事先我們確認了服務器應用程序狀態是正常的,將排查重點放在服務器側接收報文這一塊。在服務器側和主機側同時抓包,查看是否能抓到來自主機的報文。

  1. //服務器使用linux系統,抓包使用tcpdump軟件,-port 80表示抓取端口為80的報文,src host表示抓源地址是192.168.88.127的報文,and表示要求同時滿足以上2個條件。 
  2. $ tcpdump -port 80 and src host 192.168.88.127 -nn 

通過抓包發現,主機在發送建立連接請求時,服務器沒有抓到任何來自于主機192.168.88.127訪問服務器80端口的報文,也就是說三次握手根本無法完成,更不要談數據傳輸了。因為之前ping命令又能從主機ping通服務器,表示網絡是通暢的。

這種情況下,很可能是防火墻策略阻檔了報文,立即檢查主機防火墻策略 。

  1. //centos 7環境下  
  2. $ systemctl status firewalld 

防火墻狀態

檢測防火墻狀態

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

TCP協議是TCP/IP協議族最重要的協議之一,搞清楚他的運行機制,對于提高運維工作的效率是有巨大幫助的。這篇短文,只是讓大家清楚TCP的概念和他的重要性,學習的道路是漫長的,我們才剛剛上路。

 

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2022-07-07 09:00:17

TCP 連接HTTP 協議

2022-08-05 11:03:59

TCP 四次揮手三次握手

2022-09-02 12:13:22

TCPUDP場景

2019-12-31 20:41:39

IPUDPTCP

2010-07-06 15:50:12

TCP和UDP協議

2013-05-27 10:48:16

TCPUDP傳輸協議

2020-07-28 08:38:10

TCPUDP協議

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協議

2019-04-16 09:27:46

2010-09-06 09:43:46

TCPUDPAndroid

2010-07-07 10:42:36

TCP UDP協議

2016-11-01 23:16:52

光纖光纖線纜

2013-08-01 10:01:02

網絡協議TCP協議UDP協議

2010-07-07 11:02:26

TCP UDP協議服務

2017-06-06 10:50:09

Python功能和特點

2014-12-03 14:05:01

TCPUDP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www.久久.com| 亚洲三级免费看 | 粉嫩一区二区三区国产精品 | 中文字幕 在线观看 | 欧美激情在线精品一区二区三区 | 青青草一区二区三区 | 一区在线观看 | 精品视频一区二区三区在线观看 | 午夜丁香视频在线观看 | 在线不卡一区 | 国产精品不卡一区 | 久久99精品国产自在现线小黄鸭 | 精品亚洲永久免费精品 | 久久久久久亚洲欧洲 | 亚洲精品片 | 成人免费在线视频 | 国产精品综合久久 | 日韩欧美中文字幕在线观看 | 午夜不卡福利视频 | 美国一级毛片a | 久久久综合 | 在线看91| 国产目拍亚洲精品99久久精品 | 国产精品一区二区三 | 午夜精品久久久久久不卡欧美一级 | 国产一区亚洲 | 亚洲成人在线视频播放 | 国产目拍亚洲精品99久久精品 | 天堂久久久久久久 | 四虎影院在线观看免费视频 | 成人福利电影 | 不卡一区二区三区四区 | 91porn在线观看 | 欧美一区二区三区的 | 日韩精品在线播放 | 久久久久久久一级 | 欧美久久久 | 国产麻豆乱码精品一区二区三区 | 国产一区二区三区四区 | 999久久久 | 免费在线一区二区三区 |