ポート番号
2つ目の記事はポート番号について!!
よくエラーが発生するあれです、
ポートが開いてませんってあれです、
こちらから言わせるとつべこべ言わずに開いてくれって感じなんですけど、どうにもこうにもそういうわけにはいかないみたいで、、、
まぁ見ていきましょう、!
ポート番号ってなに?
コンピュータ間でデータの送受信を行うときはさまざまな作業が行われているのはみなさんご存知でしょう。このさまざまな作業をおこなってくれる便利さんな仕組みにTCP/IPってものがあるんですね。
データの送受信を行う流れは[データをデジタル信号にする->送り先に届ける->デジタル信号をデータに戻す]というようなものです。
これらの作業を効率よく行うためにTCP/IPは5つの層に分かれてそれぞれの層が独立した役割を担っています。
はい!
その5つの層の中のひとつであるアプリケーション層で登場するのがポート番号なのです!!アプリケーション層では決められた通信方法(プロトコル)によって、決められた玄関に情報を送り込まなければならないのという役割を担っているのですが、その決められた玄関がポート番号ってなわけです。
って言ってもナンナノって感じですね。
ちょーーーーー簡単に考えると、コンピュータ間でデータの送受信を行うときに決められた玄関にデータを送りこみたいのだが間違えた玄関にピンポンしないように番号をふった。その番号がポート番号ってわけです。
あんまり深くつっこみすぎるとTCP/IPの話で一週間終わっちゃうのでこんな感じで、、、
(もっとちゃんとした正解がほしい方はTCP/IPを勉強してみてください、わたしも、、、)
どんなのがあるのかい
ポート番号にはたくさんの種類があります。
0~65535番まであります。(ありすぎ)
0~1023番まではウェルノン・ポート番号といって通信サービスごとにあらかじめ予約してあります。
例えば以下のようなもの
www HTTP 80
www HTTPS 443
遠隔ログイン SSH 22
なんか聞いたことある!みたいな感じな方も多いと思います。
そうそう!あなたの今使っているパソコンやスマホの上の方に書いてあるURLにもhttpsとか書いてありません?これはポート番号443を使ってデータのやり取りをしているってことですね。
ポート番号はユーザが独自に設定することも可能ですが、そのような場合は通信するコンピュータ間でどの番号を使うのかを予め決めておかなければなりません。(なんか秘密の通信みたいでこれはこれでいいかも、、、ってのは冗談であとで忘れそうだからきちんと管理しないとね笑)
実際にみてみよう!
Linuxなら端末、Macならターミナル、WindowsならPowerShellを開いてnetstat -a
を実行してみてください。
するとどうでしょう。
プロトコル、ローカルアドレス、外部アドレス、状態が表示されますね。
これはそれぞれ、使用されている通信方法、自分のコンピュータのホスト名とポート番号、相手先のドメインとポート番号、通信状態をあらわしています。
最後に
今回の記事は軽くさくっとって感じでしたがいかがでしょうか?自分に対する備忘録的なものなのでおおめにみていただけたらうれしいです、
間違っていることや改善点があればビシバシとお願い致します、!
最後まで読んでいただきありがとうございました。