2023. 9. 7. 21:33ใAWS/troubleshooting
๐ ํ๊ฒฝ
์ ๊ท๋ก ํต์ ์ด ํ์ํ ์ธ๋ถ ๋คํธ์ํฌ์ VPN์ผ๋ก ์ฐ๊ฒฐํ๊ณ ์ ํ๋ค. Client Network ์ ์ฑ ์ ๋ ๊ฐ์ vpn ip๋ฅผ ์ ๊ณตํ์ฌ ๊ฐ๊ฐ์ primary, secondary ํฐ๋๋ก ์ด์ฉํ๋ค.
AWS์์๋ Client์ Site-to-Site VPN์ ์ฐ๊ฒฐํ๊ธฐ ์ํด ์ ๊ณต๋ฐ์ IP๋ก ๋ ๊ฐ์ Customer Gateway๋ฅผ ์์ฑํ์๊ณ ๊ฐ CGW์ ๋ํด์ Site-to-Site VPN connection์ ์์ฑํ์๋ค. Client๋ BGP๋ฅผ ์ง์ํ์ฌ AWS์ VPN Connection์ dynamic ํ์ ์ผ๋ก ์์ฑํ์๊ณ AWS ๋ด VPN ํ๊ฒ ํ์ ์ ๊ธฐ์กด ๊ตฌ์ฑ๋์ด ์๋ Transit Gateway๋ก ์ง์ ํ์๋ค. ๋ง์ง๋ง์ผ๋ก, ์์ฑํ VPN ์ฐ๊ฒฐ์ ๋ํ Transit Gateway Attachment๋ฅผ 2ea ์์ฑํ์๋ค.
- Customer Gateway : 2ea
- Site-to-Site VPN Connection : 2ea
- type: dynamic
- target gateway type: transit gateway
- Transit Gateway Attachment : 2ea
โ๏ธ ๋ฌธ์
์์ฑํ VPN ์ฐ๊ฒฐ์ 2๊ฐ์ด์ง๋ง ํ ์ฐ๊ฒฐ ๋น ํ ํฐ๋๋ง up ์ํ์ด๊ธฐ ๋๋ฌธ์ up์ธ ํฐ๋์ ๋ํด์ ์ฅ์ ๋ฐ์ ์ ๋์ผํ ์ฐ๊ฒฐ์ ์๋ ํฐ๋์ด up๋๋ ๊ฒ์ด ์๋๊ณ , ๋ค๋ฅธ VPN ์ฐ๊ฒฐ์ด ํต์ ์ ์ด์ฉ๋์ด์ผ ํ๋ค. ์ฆ, vpn-01์ tunnel-01(up), tunnel-02(down)๊ฐ ์๊ณ vpn-02์ tunnel-03(up), tunnel-04(down)๊ฐ ์๋๋ฐ ํ์ ํต์ ํ ๋ ์ฌ์ฉํ๋ vpn-01์ tunnel-01์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด vpn-02๋ฅผ ํต์ ์ ์ด์ฉํด์ผ ํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ transit gateway์ route table์์ ์ธ๋ถ ๋คํธ์ํฌ ๋์ญ์ ๋ํด vpn-01๊ณผ ์ฐ๊ฒฐํ tgw attachment ๊ฐ vpn-02์ ์ฐ๊ฒฐ๋ tgw attachment๋ก ์๋์ผ๋ก ๋ณ๊ฒฝ๋์ด์ผ ํ๋ค.
trangit gateway routing table์์๋ ๊ฐ์ CIDR ๋์ญ์ ๋ํด์ ๋ค๋ฅธ attachment๋ก ๋ผ์ฐํ ์ ์ถ๊ฐํ ์๊ฐ ์๋ค. route table์ ๋ช ์๋ attachment(vpn-01)์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ๊ฒฝ์ฐ, route table์ BLACKHOLE์ ๊ฐ๋ฆฌํค๊ฒ ๋๋ค. ๋ฐ๋ผ์ transit gateway route table์์ ์๋์ผ๋ก ๋์ผํ CIDR ๋์ญ์ ๋ํด ๋ค๋ฅธ attachment(vpn-02)๋ก ๋ณ๊ฒฝํด์ฃผ์ด์ผ ํ๋ค.
๐ซ ํด๊ฒฐ ๋ฐฉ๋ฒ
Static Route๋ฅผ ์ด์ฉํ์ง ์๊ณ attachment๋ฅผ ๋ชจ๋ propagation์ผ๋ก ์์ฑํ๋ค.
propagation์ ์์ฑํ๋ฉด ํด๋น CIDR ๋์ญ์ ๋ํด propagted type์ผ๋ก ๊ฒฝ๋ก๊ฐ ํ๋ ์์ฑ๋๋ค.
Fail-Over ํ ์คํธ ์ ์ธ๋ถ์ ์๋ VPN ์ฅ๋น์์ ์์๋ก vpn-01 ํฐ๋์ ๋ค์ด ์ํค๋ฉด transit gateway์ route table์์ ์๋์ผ๋ก attachment๊ฐ ๋ณ๊ฒฝ๋๋ค. ์ฆ primary vpn connection์์ secondary vpn connection์ผ๋ก ๋ผ์ฐํ ๊ฒฝ๋ก๊ฐ ์๋์ผ๋ก ๋ณ๊ฒฝ๋๋ค.
๐จ ์ฃผ์ ๐จ
CIDR ๋์ญ์ prefix list๋ก ๊ด๋ฆฌํ์ฌ Transit Gateway์ Prefix list references๋ก ์ถ๊ฐํด๋ route type์ด propagated๋ก ํ์๋๋ค. ํ์ง๋ง ์ด ๊ฒฝ์ฐ์๋ vpn connection์ด ๋ค์ด๋์ด๋ ์๋์ผ๋ก attachment๋ฅผ ๋ณ๊ฒฝํด์ฃผ์ง ์์ผ๋ ์ฃผ์ํ์.
๋์ VPN์ ์ฌ์ฉํ๋ฉด ์ฌ๋ฌ VPN ์ฐ๊ฒฐ์ ๋์ผํ Transit Gateway ํ๊ฒ์ผ๋ก ๊ตฌ์ฑํ๊ณ BGP ์์ฑ์ ๋ฐ๋ผ Active/Passive๋ก ์ค์ ํ ์ ์์ผ๋ฏ๋ก ์ค๋จ์ด ๋ฐ์ํ์ง ์๋๋ค. Dynamic์ผ๋ก ๊ตฌ์ฑ๋ ์ค๋ณต VPN ํฐ๋์ ํตํด ์ธ๋ถ๋ง์์ advertise ๋๋ BGP ๊ฒฝ๋ก๊ฐ ๋ค์ hop์ 2๊ฐ์ VPN ์ฐ๊ฒฐ๋ก ์ฌ์ฉํ์ฌ TGW๋ก ์๋์ผ๋ก ์ ํ๋๋ค.
AWS๋ก VPN ์ฐ๊ฒฐํ๋ ์ธ๋ถ ๋คํธ์ํฌ์์๋ ์ค์ ๊ด๋ จํ์ฌ ์๋์ ๊ฐ์ AWS Support ticket ๋ต๋ณ์ ๋ฐ์๋ค.
“
ํธ๋ํฝ์ ์ํฅ์ ์ค ์ ์๋ ๋ฐฉ๋ฒ๊ณผ ๊ด๋ จํ์ฌ AWS๋ก์ ์์๋ฐ์ด๋ ํธ๋ํฝ์ ๊ทน๋ํํ๊ธฐ ์ํด ์จํ๋ ๋ฏธ์ค ์ธก์์ ๊ธฐ๋ณธ ํฐ๋์ ๋ํ “High Local preference” BGP ์์ฑ์ ์ฌ์ฉํ๊ณ , AWS์์ ์จํ๋ ๋ฏธ์ค๋ก ๋ฐํ๋๋ ํธ๋ํฝ์ด ํญ์ ๊ธฐ๋ณธ (Primary) ํฐ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ฅด๋๋ก, ๋ณด์กฐ ํฐ๋ (Secondary)์ “AS path prepending” BGP ์์ฑ์ ์ฌ์ฉํ์ฌ ๋ VPN ์ฐ๊ฒฐ ๋ชจ๋์ ๋์ผํ ๊ฒฝ๋ก๋ฅผ ์๋ฆด ์ ์์ต๋๋ค.
VPN-ABC (ํฐ๋ 1) - Local Preference: 500 | AS PATH : 65270
VPN-XYZ (ํฐ๋ 3) - Local Preference: 300 | AS PATH : 65270 65270 65270
”
AWS Site-to-Site VPN์ ์ฐ๊ฒฐ๋๋ ์ธ๋ถ์ VPN ์ฅ๋น์ ์ค์ ์ ๋ฐ๋ผ๊ฐ๋ค๊ณ ํ๋ ์ฐธ์กฐํฉ์๋ค.