> [!date] published: 2022-02-14
## ๐ Intro
์๋ธ์ ํธ์ SSH ๋ถ๋ถ์ ๋ณด๋ฉด SSH์ ์ฌ์ฉ์ด ๋ํ์ค ์ค๊ฐ์ ํ
์คํธ ๋ ๊ฒ์ด๋ผ๋ ๋ง์ด ์๋ค. ์ค์ ๋ก ์ข ์ด์ฌํ ์์น๋ฅผ ํด๋ณด๋ฉด ์ฐพ์ ์ ์๋ ํ๊ฐํ๋ฅผ ๋ด๋ ๋ํ์ค ์ค์ Host PC์์ Guest PC๋ก SSH๋ฅผ ํตํ์ฌ ์ ์์ ํด์ผ ํ๋ ์ํฉ์ด ์๊ธฐ๋๋ฐ, ์ด๋ฐ์ ๋ฐ ๊ณผ์ ๊ด๋ จ ์๋ฃ๋ฅผ ์ฐพ๋ค๋ณด๋ฉด ์ด ๊ณผ์ ์์ **ํฌํธ ํฌ์๋ฉ**์ด๋ผ๋ ๊ฐ๋
์ด ์ฌ์ฉ๋๋ค๋ ๊ฒ์ ์ง์ํ ์ ์๋ค.
๋ฌธ์ ๋ ๋ง์ ๋ถ๋ค๊ป์ ํ์ ๋๋ก ์ค์ ์ ์ ๋ฐ๋ผ๊ฐ๋ฉด ๋ญ๊ฐ Host์์ Guest๋ก ์ ์ ์์ด ๋๊ธด ํ๋๋ฐ ๋ด๊ฐ ์ ํฌํธํฌ์๋ฉ์ด๋ผ๋ ๊ฐ๋
์ ์ฌ์ฉํ๊ฒ ๋๊ฑด์ง, ๋ด๊ฐ ๋ญ ์ค์ ์ ํ๊ฑด์ง(ใ
ใ
ใ
) ์ ์ดํด๊ฐ ๋์ง ์์์ ํ์ฐธ์ ์ฝ์งํ๊ณ ์์๋ค.
๊ทธ๋ฆฌ๊ณ ๊ณผ์ ๋ํ์ค๋ฅผ ์๋ ์ง๊ธ์์์ผ ์กฐ๊ธ ๊ฐ๋ฅ์ด ์กํ๋ ๊ฒ ๊ฐ์์ ๊ธฐ์ ๋ง์์ ๊ณผ์ ์ ํ์ํ ์ ๋์ ๋ด์ฉ๋ง ๊ฐ๋จํ ์ ๋ฆฌ๋ฅผ ํด ๋ณด๋ ค๊ณ ํ๋ค. (์์ง์ ๋ ์ด์์ ๋ชจ๋ฆ...)
## ๐ Port forwarding
ํฌํธ ํฌ์๋ฉ์ด๋ ๋ง๊ทธ๋๋ก ํฌํธ๋ฅผ ์ ๋ฌํด์ฃผ๋๊ฑฐ๋ค. ์ง์ง ๊ฐ๋จํ๊ฒ ๋งํ๋ฉด ์๋ฒ์ ํน์ ํฌํธ๋ก ์์ฒญ์ด ์์ ๋, ์ด ํฌํธ๋ก ์ค๋ ์์ฒญ์ ์ด๋์ ์ด๋ค ํฌํธ๋ก ์ ๋ฌํด์ฃผ์! ๋ผ๋ ๊ฒ์ ์ค์ ํด ๋๋ ๊ฒ์ด๋ค.
[๊ตญ๋ฌธ ์ํค๋ฐฑ๊ณผ](https://ko.wikipedia.org/wiki/%ED%8F%AC%ED%8A%B8_%ED%8F%AC%EC%9B%8C%EB%94%A9)์ ์ ์ค๋ช
์ด ๋์ด ์๋๋ฐ ์ฉ์ด๊ฐ ์ข ์ด๋ ค์์... ์ฒ์์ ์ ์ดํดํ์ง ๋ชปํ๋๋ฐ ๊ฒฐ๊ตญ์ ๊ทธ๋ฅ ์์ ์ ๋ ๊ฒ ํ์ด์ด๊ฑฐ๋ ๋๊ฐ์ ๋ง์ด๋๋ผ.
๊ทผ๋ฐ ๋ด๊ฐ ๊ถ๊ธํ๋ ๋ถ๋ถ์ SSH ์ ์์ ํ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ ์๋์ ๋ช
๋ น์์
```shell
ssh <id>@<address> -p <port_number>
```
3๊ฐ์ ๊ฐ์ ๋ชจ๋ ์๋๋ฐ ์ ํฌํธํฌ์๋ฉ์ด ํ์ํ๋ฉฐ, ์ ์ค์ ๋ก ์ ์์ด ์๋๋์ง์๋ค.
๋ต์ ๋ฏธ๋ฆฌ ๋งํ๋ฉด... VM์์ `hostname -I`๋ก ์๊ฒ ๋ (host ๊ธฐ์ค์์)์๊ฒฉ์ง IP์ธ 10.0.2.15๋ ๋๋ง ์๊ณ ์๋๊ฑฐ์๊ณ ๊ณต๊ณต์ฐํ (?) ์๋ ค์ง์ง๋ ์์ ์ฃผ์์๋ค.
## ๐ Public IP vs. Private IP
### โจ Public IP (๊ณต์ธ IP)
์ธํฐ๋ท ์๋น์ค ๊ณต๊ธ์(ISP)๊ฐ ์ ๊ณตํ๋ IP ์ฃผ์์ด๋ค.
์ธ๋ถ์ ๊ณต๊ฐ๋์ด ์๋ IP์ฃผ์์ด๊ณ , ์ ์ผํ ๊ฐ์ ๊ฐ๋๋ค.
์ธ๋ถ์ ๊ณต๊ฐ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ PC๋ก๋ถํฐ์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
### โจ Private IP (์ฌ์ค IP)
๋ผ์ฐํฐ์ ์ํด์ ํ ๋น๋๋ IP์ฃผ์์ด๋ค.
๊ฐ์ ๋คํธ์ํฌ ๋ด์์๋ ์ ์ผํ ๊ฐ์ ๊ฐ์ง๋ง ๊ฐ์ ๋คํธ์ํฌ ์ธ์์๋ ์ ์ผํ ๊ฐ์ด ๋ณด์ฅ๋์ง ์๊ณ , ์ธ๋ถ์์ ์ ๊ทผ ๋ํ ๋ถ๊ฐ๋ฅํ๋ค.
์ ๋ณด๋ฅผ ์ฐพ์ผ๋ฉด์ ์ฌ์ค IP์ ์ฃผ์ ๋์ญ์ ๋ํด์ ์๊ฒ ๋์๋๋ฐ...
- Class A: 10.0.0.0 ~ 10.255.255.255
- Class B: 172.16.0.0 ~ 172.31.255.255
- Class C: 192.168.0.0 ~ 192.168.255.255
๋ณด๋๊น ๊ฐ์๋จธ์ ์ 10.0.2.15๊ฐ ์์ Class A์ ํฌํจ์ด ๋๋ค.
์ด๊ฒ ๋ด๊ฐ ์๋ฌด๋ฆฌ 10.0.2.15๋ผ๋ ์ฃผ์๋ฅผ ์๊ณ ์์ด๋ ์ง์ ์ ์ผ๋ก๋ ์ ์์ด ์ ๋ ์๋์๋ ์ด์ ์๋ค.
## ๐ VirtualBox Network
์ด๋ ๊ฒ ๊ฐ์๋จธ์ ์ธ๋ถ์์ ๊ฐ์๋จธ์ ์ ์ ์์ ํ๊ธฐ ์ํด์๋ ํฌํธ ํฌ์๋ฉ์ ํตํด์ผ ํ๋ค๋ ์ฌ์ค์ ์๊ฒ ๋์๋๋ฐ ์ฌ์ค์ ์ค์ ์ ๋ฐ๋ผ์๋ ๊ตณ์ด ํฌํธ ํฌ์๋ฉ์ ํ์ง ์์๋ ์ ์์ด ๊ฐ๋ฅํ๋ค.
VirtualBox ๊ฐ์๋จธ์ ์ค์ ์์ ํ ์ ์๋ ๋คํธ์ํฌ ์ข
๋ฅ๋ค์ ์๋ ์ฌ์ง๊ณผ ๊ฐ์๋ฐ ๋๋ ๊ธฐ๋ณธ๊ฐ์ด๊ณ ํฌํธํฌ์๋ฉ์ด ํ์ํ ๋ฐฉ์์ธ NAT๊ณผ ํฌํธํฌ์๋ฉ์ด ํ์ ์๋ ๋ฐฉ์์ธ ๋ธ๋ฆฌ์ง ๋ฐฉ์์ ๋ํด์๋ง ๊ณต๋ถํด๋ณด์๋ค.
![[8428d939-c18b-42ee-8620-57a87f5b7998.png]]
### โจ NAT
Network Address Translation (VirtualBox ๊ธฐ๋ณธ๊ฐ)
Host PC๋ก๋ถํฐ IP๋ฅผ ํ ๋น๋ฐ๋๋ค.
๋ฐ๋ผ์ Host PC๋ฅผ ํตํด์ ํฌํธ ํฌ์๋ฉ์ ํตํด ์ธ๋ถ ๋คํธ์ํฌ์ ํต์ ์ด ๊ฐ๋ฅํ๋ค.
---
์ผ๋จ ํธ์คํธPC์ cmd์ฐฝ์์ `ipconfig`๋ก VirtualBox์ IP address๋ฅผ ์์๋ธ๋ค. (window ๊ธฐ์ค)
![[a2b68263-7e93-4905-a4b8-79fcab1d6859.png]]
๊ทธ๋ฆฌ๊ณ ๊ฐ์๋จธ์ ๋ด์์ `hostname -I` ๋ก ๊ฐ์๋จธ์ ์ IP address๋ฅผ ์์๋ธ๋ค.
๋ค์ ๊ฐ์๋จธ์ ์ ๋๊ณ , ์ค์ -> ๋คํธ์ํฌ-> ๊ณ ๊ธ -> ํฌํธํฌ์๋ฉ ๋ฉ๋ด๋ก ๋ค์ด๊ฐ์ ํธ์คํธ IP์ VirtualBox์ IP๋ฅผ, ๊ฒ์คํธ IP์ ๊ฐ์๋จธ์ ์ IP๋ฅผ ๋ฃ์ด์ค๋ค. ํฌํธ๋ฒํธ๋ ์ ๋นํ ๋ง๊ฒ ๋ฃ์ด์ฃผ๊ธฐ.
๊ทธ๋ฆฌ๊ณ ๊ฐ์๋จธ์ ์ ์ผ๊ณ (๊ฒ์คํธ์ SSH๊ฐ ์ผ์ ธ ์์ด์ผ ํจ.) ํธ์คํธ ์ธก์์ ๊ฒ์คํธ์ ์ ์์ ์๋ํ๋ฉด
![[a734b66b-d488-45c5-a367-4f674b59aa09.png]]
์ ์ ์์ด ๋๋ค.
### โจ Bridge
๋ธ๋ฆฌ์ง ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด IP๋ฅผ ๊ณต์ ๊ธฐ์์ ์ง์ ๋ฐ์์จ๋ค.
๊ณต์ ๊ธฐ๊ฐ ํธ์คํธ PC์ ๊ฐ์๋จธ์ ์ ๊ฐ์ ๋คํธ์ํฌ ๋์ญ์ IP๋ฅผ ํ ๋นํ๊ฒ ๋๊ธฐ ๋๋ฌธ์ ๋์ผํ ์์ค์ PC๋ก ์ธ์์ด ๋๊ณ , ๋ฐ๋ก ์ ์ํ ์ ์๊ฒ ๋๋ค.
---
VirtualBox์ ์ค์ -> ๋คํธ์ํฌ์์ ๋คํธ์ํฌ๋ฅผ ์๋์ ๊ฐ์ด **์ด๋ํฐ์ ๋ธ๋ฆฌ์ง**๋ก ๋ฐ๊พธ์ด์ค๋ค.
![[fac9ab53-8b8a-4c48-89b5-b18ee62161f3.png]]
๊ทธ๋ฆฌ๊ณ ๊ฐ์๋จธ์ ์ ์ผ์ `hostname -I`๋ก IP address๋ฅผ ํ์ธํด๋ณด๋ฉด ์๊น NAT ๋ฐฉ์์ผ๋์ ๋ค๋ฅธ IP address๊ฐ ๋์ฌํ
๋ฐ, ๊ทธ IP address๋ก Host ์์ ๊ฐ์๋จธ์ ์ผ๋ก ์ ์ํด๋ณด๋ฉด
![[f3b4d7a0-aead-46d9-9f63-e1be07c5c556.png]]
ํฌํธํฌ์๋ฉ์ ํ์ง ์์์์๋ ์ ์ ์์ด ๋๋ค.
## ๐ Reference
[ํฌํธ ํฌ์๋ฉ - ์ํค๋ฐฑ๊ณผ, ์ฐ๋ฆฌ ๋ชจ๋์ ๋ฐฑ๊ณผ์ฌ์ (wikipedia.org)](https://ko.wikipedia.org/wiki/ํฌํธ_ํฌ์๋ฉ)
[๊ณต์ธ(Public) && ์ฌ์ค(Private) IP์ ์ฐจ์ด์ (velog.io)](https://velog.io/@hidaehyunlee/๊ณต์ธPublic-์ฌ์คPrivate-IP์-์ฐจ์ด์ )
[[๋คํธ์ํฌ\] ๋์ผ๋ก ํ์ธํด๋ณด๋ Vmware Host-Only, Nat, Bridge ์ฐจ์ด (tistory.com)](https://liveyourit.tistory.com/26?category=867755)
[Virtual Box ๋คํธ์ํฌ ์ค์ ์ ๋ฆฌ \:\: ํ์ฟ ๋๋ (tistory.com)](https://takudaddy.tistory.com/352)