And Brain said,
Virtualbox Network, 상상 속의 거미줄 본문
반응형
네트워크 설정은 매우 어렵고 복잡하기만 하고 눈으로 보여지지도 않아서 아무도 알아주지 않습니다. 하지만, 그 중요성은 결코 간과할 수 없습니다. 하여, 가상환경의 네트워크를 구축하시려는 분들에게 오늘은 제가 직접 경험하면서 얻은 Virtualbox에서 가장 많이 사용되는 NAT, Host-only, NAT network, Bridged 지식들만이라도 간단하게 알려드리고자 합니다. 바로, 시작합시다.
NAT (Network Address Translation)
동작 원리: 가상 머신이 외부 네트워크에 패킷을 보낼 때, 호스트 시스템의 NAT 서비스는 패킷의 출발지 주소를 가상 머신의 IP에서 호스트 시스템의 IP로 변경합니다. 반대로 외부에서 패킷이 도착하면 NAT 서비스는 패킷의 목적지 주소를 호스트 시스템의 IP에서 가상 머신의 IP로 변경합니다.
특징: 각 가상 머신은 호스트와 개별적으로 통신합니다. NAT 모드에서 실행되는 가상 머신들은 서로 통신할 수 없습니다. 즉, 각 가상 머신은 독립적인 네트워크 환경에서 동작합니다. 외부 네트워크와의 통신은 가능하지만, 외부 네트워크에서는 NAT 뒤의 개별 가상 머신을 직접 찾아서 통신하는 것이 어렵습니다.
Usage scenario: NAT 모드는 가상 머신이 인터넷에 액세스해야 하지만, 외부에서 직접 액세스되지 않아야 할 때 유용합니다.
브릿지 (Bridged)
동작 원리: 가상 머신은 물리 네트워크의 DHCP 서버로부터 직접 IP 주소를 받아옵니다. 이렇게 하면 가상 머신이 물리 네트워크의 다른 기기와 동일한 네트워크 세그먼트에 있게 됩니다.
특징: 브릿지 모드는 가상 머신이 호스트의 네트워크 어댑터를 공유하지 않고, 물리 네트워크에 직접 연결된 것처럼 동작합니다.
Usage scenario: 가상 머신이 네트워크의 다른 기기와 동일한 네트워크 세그먼트에 있어야 할 때 브릿지 모드를 사용합니다.
호스트-온리 (Host-only)
특징: 호스트-온리 모드는 가상 머신이 호스트와만 통신할 수 있는 격리된 네트워크를 생성합니다. 이 모드에서는 가상 머신은 호스트와 통신할 수 있지만, 외부 네트워크와는 통신할 수 없습니다. 가상 머신 간에도 통신이 가능합니다.
Usage scenario: 외부 네트워크와의 통신 없이 호스트와 가상 머신 간의 안전한 통신이 필요할 때 호스트-온리 모드를 사용합니다.
NAT Network
동작 원리: NAT Network는 여러 가상 머신이 동일한 내부 네트워크를 공유하게 해주며, 이 내부 네트워크는 호스트의 NAT 서비스를 통해 외부와 통신합니다.
특징: NAT Network에 연결된 가상 머신들은 서로 통신할 수 있습니다. 즉, 같은 내부 네트워크 세그먼트에 있습니다. 외부 네트워크와의 통신은 NAT 서비스를 통해 가능하며, 외부 네트워크에서는 NAT Network 뒤의 개별 가상 머신을 직접 찾아서 통신하는 것이 어렵습니다. NAT Network는 DHCP 서버를 내장하고 있을 수 있어, 가상 머신에 자동으로 IP 주소를 할당할 수 있습니다.
NAT과 NAT Network의 차이점
NAT: 가상 머신은 호스트와만 통신하며, 다른 NAT 모드의 가상 머신과는 통신할 수 없습니다.
NAT Network: 여러 가상 머신이 동일한 내부 네트워크를 공유하며, 이 네트워크 내의 가상 머신들은 서로 통신할 수 있습니다.
** Scenario analysis
Host-only + NAT vs NAT Network
1. Host-only + NAT
Advantages:
분리된 통신 경로: 내부 통신과 외부 통신이 각각 다른 NIC를 통해 이루어지므로, 네트워크 트래픽을 더욱 세밀하게 관리할 수 있습니다.
유연성: 각 NIC의 설정을 독립적으로 조절할 수 있어, 특정 NIC만 변경하거나 비활성화하는 등의 유연한 네트워크 관리가 가능합니다.
Disadvantages:
복잡성: 두 개의 NIC를 설정해야 하므로, 초기 구성과 관리가 복잡할 수 있습니다.
리소스 사용: 두 개의 NIC를 사용하므로, 가상 머신의 리소스 사용량이 약간 증가할 수 있습니다.
2. NAT Network
Advantages:
간단한 구성: 하나의 NIC만 설정하면 되므로, 초기 구성이 간단하고 관리도 쉽습니다.
통합된 통신 경로: 내부 통신과 외부 통신 모두 같은 NIC를 통해 이루어지므로, 네트워크 트래픽의 경로가 단순합니다.
가상 머신 간의 통신: NAT Network 내의 모든 가상 머신들은 서로 통신할 수 있습니다.
Disadvantages:
제한된 유연성: 모든 통신이 하나의 NIC를 통해 이루어지므로, 내부와 외부 통신을 분리하여 관리하는 것이 어렵습니다.
여기까지 VirtualBox에서의 주요 네트워크 설정 방식에 대해 간단하게 설명하였습니다. 네트워크에 대해 더 깊이있게 설명하지 않았는데, 네트워크같이 복잡한 이론은 직접 해보지 않고는 정말 와닿지 않을 것이라 보기 때문입니다. 따라서 이 글은 여러분들에게 첫 시작에 있어서 어떤 네트워크 설정, 어떤 시나리오가 좋을지 판단하는 지침 정도일 뿐입니다. 직접 구성해보시면서 여러분들만의 정교한 거미줄을 만들어 보시길 바랍니다.
그럼, 안녕~
Thanks for watching, Have a nice day.
반응형
'IT > DevOps \ Architecture' 카테고리의 다른 글
CatLight, 어둠 속을 응시하는 고양이의 눈 (2) | 2023.09.05 |
---|---|
Harbor, 컨테이너 이미지를 위한 거대한 선착장 (0) | 2023.08.28 |
Jaeger vs Zipkin, MSA의 뛰어난 추적자들 (0) | 2023.08.07 |
Circuit Breaker, 순간아 멈추어라! (0) | 2023.03.14 |
Vault, HashiCorp와 비밀의 방 (3) | 2023.03.12 |
Comments