IP、DNS、Port 概述

prototype-01

IP

0與1

認識IP之前,要先知道在電腦最底層只認識0跟1,電腦所知道的都是從0跟1開始與結束。
我們日常生活用的是十進制,但電腦只能讀懂二進制。

人類眼中(十進制) 電腦眼中(二進制)
1 1
10 1010
100 1100100

而二進制中的1個位置就是1個bit

1
2
3
4
5
1 => 1 bit
10 => 2 bits
100 => 3 bits
101 => 3 bits
10101010 => 8 bits => 1 Byte

可得知1 Byte 有0~255的可能
可以點這裡去試試二進制轉十進制

IP地址

IP位址(英語:IP Address,全稱Internet Protocol Address)

目前比較常看到的IP地址(IPv4)長這樣 127.0.0.1

IPv4

由4 Bytes組成
4 Bytes => 32 bits => 2^32 種可能性(每個bit有0或1)
以2的32次方計算,大約可得42億900萬
或你可理解成256 * 256 * 256 * 256
每個能連上網的裝置都是獨特的,所以全世界只能同時有約42億台裝置同時連上網
image alt
IPv6為了解決IP位置被用完的問題而出現了

IPv6

由16 Bytes組成
16 Bytes => 128 bits => 2^128 種可能性(每個bit有0或1)
以2的128次方計算,大約可得超級大
可解決IP不夠用的問題

IPv6網際協定的最新版本,這裡不多作探討

DNS

網域名稱系統(英語:Domain Name System,縮寫:DNS)

剛剛從IP知道,每個連上網的裝置都有自己獨特的IP位置。
我們可以透過瀏覽器輸入IP連線到別人的裝置,他們接受到的後會回覆要給你顯示的畫面
可以參考這篇HTTP概念入門

但我們今天到某個網站,輸入一堆數字,不符合人性也很難記得住

IP位置 DNS
127.0.0.3 www.youtube.com
126.80.80.2 www.netflex.com

(此IP位置為舉例,亂取的)

DNS
透過DNS,我們能更直覺得輸入網址(www.youtube.com),他會幫我們轉換成IP位置,能更方便的前往網站。

Port

當我輸入 (www.youtube.com),透過DNS轉換成IP位置,除了`127.0.0.3`,後面還有一個`port 80,完整體長這樣127.0.0.3:80`。

Port
就像是我今天去銀行(IP),不同的窗口負責不同的業務(Port),我們需要到對應的窗口,才能得到預期的服務。

輸入127.0.0.3:80順利得到youtube的網頁,127.0.0.3:996可能不會有東西,一般來說還是會自動導向。

Port Number 服務
80 HTTP
20 FTP
53 DNS
443 HTTPS

(常見的Port)

點這看更多:TCP/UDP埠列表