문제 상황
- 회사 밖에서 회사 서버에 접속해야 했습니다.
- 하지만 회사 서버는 방화벽 설정으로 인해 외부에서는 직접 접근이 불가능했습니다.
해결 시도
- 회사에서 제공한 OpenVPN 설정 파일(.ovpn)과 함께, crt, key, pem 등 필요한 인증서 파일들도 모두 갖추고 있었습니다.
- macOS에서 OpenVPN Connect 앱으로 시도했지만, 접속은 계속 실패했고 로그에는 서버 타임아웃 메시지가 반복되었습니다.
- .ovpn 파일을 수정해 UDP → TCP, 포트 변경, 불필요한 옵션 제거 등 여러 가지 방법을 시도했지만 효과가 없었습니다.
- 결국 회사 선임에게 도움을 요청했고, 제 집 공인 IP를 화이트리스트에 등록하는 방식으로 문제를 해결했습니다.
배운 것
- 이 과정을 통해 VPN의 기본 원리에 대해 다시 이해하게 되었습니다.
- VPN은 내 컴퓨터와 회사 서버 간에 암호화된 터널을 생성하고, 트래픽을 VPN 서버를 경유하여 보내는 방식입니다.
- VPN을 사용한다고 해서 내 IP가 VPN 서버의 IP로 완전히 바뀌는 것은 아니며, 외부에서 볼 때는 여전히 제 ISP에서 할당한 공인 IP를 통해 접속하게 됩니다.
- 그래서 회사 방화벽 설정에 따라, VPN 접속 자체를 차단할 수도 있으며, 이럴 땐 가장 빠른 해결책은 내 공인 IP를 회사에 등록 요청하는 것입니다.
- 이때 192.168.x.x, 10.x.x.x 와 같은 IP는 사설 IP이기 때문에 외부에서는 식별할 수 없습니다.
- 제 컴퓨터에서 ipconfig getifaddr en0 으로 확인한 192.168.0.44는 공유기 내부에서만 유효한 IP였습니다.
- 실제 외부에 노출된 공인 IP는 whatismyip.com에서 확인할 수 있었고, 그 값을 선임에게 전달해 등록하니 접속이 정상적으로 되었습니다.
- 덤으로, 터미널에서도 다음 명령어로 공인 IP를 빠르게 확인할 수 있다는 것도 새로 배웠습니다:
curl ifconfig.me
결론
- VPN을 통한 외부 접속이 실패할 경우, 무조건 설정 문제로 단정짓기보다는 방화벽이나 IP 제한 정책을 먼저 의심하는 것이 좋다는 걸 배웠습니다.
- 사설 IP와 공인 IP의 차이를 확실히 이해하게 되었고, 네트워크 구조에 대한 이해가 실무에도 중요하다는 걸 다시 느꼈습니다.
'TIL' 카테고리의 다른 글
[250429 TIL] 컴포넌트 리셋에 key써먹기 (0) | 2025.04.29 |
---|---|
[250418 TIL] Inertia/React 에서 ContextAPI 다루기 (0) | 2025.04.18 |
[250326 TIL] image-rendering, translateZ(0) (0) | 2025.03.26 |
[250318 TIL] 인앱에서 튕겨버리고 싶을때 (0) | 2025.03.18 |
[250313 TIL] 마이크로프론트엔드(딥리서치) (0) | 2025.03.13 |