Skip to main content

Command Palette

Search for a command to run...

aws vpc subnet 小常識

Updated
1 min readView as Markdown
aws vpc subnet 小常識

AWS VPC with subnet

在 AWS 的服務中,可以透過 AWS Virtual Private Cloud

來把部署的運算資源做有效的管控以及隔離

AWS subnet

每當開啟一個 VPC 時,預設會開啟一個網路區段的空間來配置資源

舉例來說: 一般會是 10.0.0.0/16 代表有 16bit 被 lock 只剩 16bit 可分配

而 VPC 內會在把該網路區段隔離成多個更小的子網段稱為 subnet

舉例來說: 以下圖來說,切隔成 10.0.1.0/24 與 10.0.2.0/24 兩個子網段

image

且在假設都在相同網段且相同 Available Zone 的子網段彼此可以相通

而其中兩個子網段的連通性會根據其設定 route table 來做路由處理

比如說 路徑是在 10.0.1.x 的 target 會被導向 local

而 public subnet 因為有設定連接到 Internet Gateway

所以 route table 可以解析外部的 request 所以跟外部做互通

一般會把 Subnet 有沒有連接到 Internet Gateway 與否分成兩種 Subnet

Public Subnet

一般會放置需要接收外部 request 的服務的比如 front-end web server 或是 api server

Private Subnet

一般會放置不需要對外的服務,比如內部 cronjob 或是 ETL 等等內部服務

甚至是 DB service 通常也會配置 private subnet 並且限定特殊 Security Group 存取

一般的 High Availability 配置

為了避免因為單一 Available Zone 出事導致服務無法運行

通常會把一個服務配置到兩個不同 Available Zone 的地方

image

以上圖來說 AZ1, AZ2, AZ3 只要還有兩個 AZ 有正常 服務就可以正常運行

IP 小知識

當 subnet 為 10.0.1.0/24 時,代表有 24bit 被 lock 只剩下 (32-24) = 8 bit 可以使用

所以代表有 2^8 = 256 個 ip 可以用

然而以下有幾個特殊的 IP是無法使用的

10.0.1.0 ---> NETWORK ADDRESS 用來界定 subnet 10.0.1.1 ---> AWS ROUTING 10.0.1.2 ---> AWS DNS 10.0.1.3 ---> AWS FUTURE 10.0.1.255 ---> BROADCAST

所以實際上能使用的只有 256 - 5 = 251 個 ip

187 views

More from this blog

AI 時代下的系統可理解性問題

GAI 的時代下,近一年很流行 Vibe-coding,幾乎人人都在草率地使用 Vibe-coding 一詞來指一系列的軟體工程實踐。它指的是一種開發者不親自手打 coding,而是僅透過自然語言向 AI 描述需求(給出「方向」或「感覺」),完全放手讓 AI 代理去自動生成、拼湊出整個應用程式的開發風格。 然而,在專業的軟體工程領域,這股看似美好的「Vibe」背後,隱藏著極高的安全隱患與系統崩潰危

Aug 24, 20263 min read94
AI 時代下的系統可理解性問題

Get Your Hands Dirty on Clean Architecture CH5 Use Case

書本連結 前言 會挑這本書看的人,應該都是關心自己負責專案的軟體架構的人。不只希望開發的軟體能滿足客戶的明確需求,也希望能滿足可維護性(maintainability)的隱性需求,以及自己對結構與美觀習慣的要求。 要能滿足上述這些要求很難,因為專案通常不會按照計畫進行。可能變因有 deadline,最後的 API 與承諾的不同,又或者我們的設計無法很好的貼合需求的變化所需。。因此完美的架構只有在一

Jul 2, 20264 min read68
Get Your Hands Dirty on Clean Architecture CH5 Use Case
M

MicroFIRE

75 posts