TCP/UDP

【図解】TCPの状態遷移 〜Listen、Establish、FIN Wait等〜

TCP の State とは

クライアントは TCP SYN を投げ、サーバはそれを受信すると TCP SYN/ACK を返します。そしてそれを受け取ったクライアントは TCP ACK を返します。

この動作を 3way Handshake と呼びますが、これが完了すると『TCP コネクション』が確立され、データ通信ができる状態になります。この状態 (State) を Established と呼びます。

TCP にはこの "Established" 以外にもホストがどのような状況であるかを示す"状態(State)" がいくつかあります。この記事ではこの State がどのように移り変わるかを説明します。

以下に TCP の状態遷移図を示します。

FIN を最初に送信するホストを Active Close ホスト、FIN を最初に受信するホストを Passive Close ホスト と呼びます。(FIN はクライアント、サーバのどちらからでも最初に送ってよいとされています。)

TCP状態の確認

TCP の状態を確認するには、Windows であればコマンドプロンプトで netstat -n コマンドを、Linuxであればシェルで ss コマンドを使います。以下は Windows の例です。

Linux の場合は ss コマンドを使います。以下を参照下さい。

linux【ss/netstat】コマンドの見方/オプション~Recv-Q/Send-Qやポート確認(Listen/Estab/Unconn),プロセス表示等~
ss コマンド (旧 netstat コマンド) とは ss は socket ...

nesukeの推薦図書

以下に該当する人なら熟読することを強く推奨します。

  • 周りのネットワークエンジニアよりも一歩抜き出た存在となり、価値を高めたい!
  • サーバエンジニアだけどネットワークも含めた総合的なセキュリティへの理解も深めていきたい!
本書は、ベストセラーの『マスタリングTCP/IP 入門編』を時代の変化に即したトピックを加え、内容を刷新した第6版として発行するものです。豊富な脚注と図版・イラストを用いたわかりやすい解説により、TCP/IPの基本をしっかりと学ぶことができます。プロトコル、インターネット、ネットワークについての理解を深める最初の一歩として活用ください。
本書は、日々更新されていくネットワークセキュリティ技術にキャッチアップしていくために必要となる基礎を体系的に網羅した「マスタリングTCP/IP シリーズ」の一冊です。基本的な暗号技術、それらのセキュリティプロトコルへの応用、認証技術、Web アプリケーションへの多様化する攻撃手法の理解と対策などを扱っています。
ブラウザにURLを入力してからWebページが表示されるまでの道筋をたどりながら、その裏側で働くTCP/IP、LAN、光ファイバなどの技術を説明していきます。インターネットを通ってサーバーまで行って帰ってくる道筋の途中には、今のネットワークの主要な技術要素が全部あります。そこでの機器やソフトウエアがどのように動き連携しているのかを探検すればネットワーク全体の動きがわかります。

コメント

タイトルとURLをコピーしました