Launch service pages are live SaaS, web app, indie game, and home server public-context handoffs. No secrets.
Services SaaS Web App Game Homelab

Linux 라우터 기반 NAT 환경 구축 실습

네트워크 운영 관점에서 Linux 라우터 기반 NAT 환경 구축 실습의 목적, 구성 흐름, 실행 전 확인할 항목을 정리한 기술 노트입니다. 원문 핵심: 네트워크 NAT환경 안에서 리눅스를 라우터로 사용하여 구성하는 실습 ​ 리눅스를 라우터로 사용하는 NAT 환경 구축과 라우터 역할을 하는 리눅스를 기점으로 나눠지는 서로 다른 네트워크 주소간의 통신 여부 확인이 주...

핵심 요약

  • 네트워크 운영 업무에서 Linux 라우터 기반 NAT 환경 구축 실습를 빠르게 검토할 수 있도록 원문을 운영 절차 중심으로 재구성했습니다.
  • 실습/설정/로그 내용은 보존하되, 적용 범위와 검증 포인트를 먼저 확인할 수 있게 정리했습니다.
  • 원문 핵심: 네트워크 NAT환경 안에서 리눅스를 라우터로 사용하여 구성하는 실습 ​ 리눅스를 라우터로 사용하는 NAT 환경 구축과 라우터 역할을 하는 리눅스를 기점으로 나눠지는 서로 다른 네트워크 주소간의 통신 여부 확인이 주 목표 ​ <목차> - 전체 구성 개요 - VMware 네트워크 설정 - 라우터 리눅스 설정 - 192.168.11.11(리눅스) 192.168.11.12(윈도우) 192.168.12.11(리눅스) 설정 - 핑 테스...

적용 범위

이 글은 네트워크 운영 영역에서 Linux 라우터 기반 NAT 환경 구축 실습를 검토하는 사람을 위한 정리본입니다. 원문은 네이버 블로그에 작성된 실습/메모를 기반으로 하며, 현재 환경에 적용할 때는 명령어와 설정값을 반드시 재검증해야 합니다.

정리된 본문

네트워크 NAT환경 안에서 리눅스를 라우터로 사용하여 구성하는 실습

리눅스를 라우터로 사용하는 NAT 환경 구축과 라우터 역할을 하는 리눅스를 기점으로 나눠지는 서로 다른 네트워크 주소간의 통신 여부 확인이 주 목표

<목차>

- 전체 구성 개요

- VMware 네트워크 설정

- 라우터 리눅스 설정

- 192.168.11.11(리눅스) 192.168.11.12(윈도우) 192.168.12.11(리눅스) 설정

- 핑 테스트

- 라우트 확인

- 경로 확인

- 전체 구성 개요

먼저 네트워크 환경을 지도로 정리해봤다 (실제로는 이렇게 구성되어있지 않지만 쉽게 구분하기위해 그림)

RouteCent7이 라우터를 담당할 CentOS7 리눅스다

라우터가 원할하게 작동이 되는지 테스트하기 위해서 라우터 디폴트 네트워크주소 망(192.168.11.0/24)에 테스트용 리눅스를 설치해주고 라우터로 분리된 내부 네트워크망(192.168.12.0/24)에 다른 테스트용 리눅스와 윈도우도 설치해준다

- VMware 네트워크 설정

본격적으로 설치하기 전에 먼저 VMware의 NAT환경 설정을 구상한대로 변경해줘야 한다

모두 설정했으면 본격적으로 설치를 진행한다

- 라우터 리눅스 설정

<RouteCent7 (라우터 리눅스) 설치>

설치 과정은 이미 이전 게시물에서 설명했으므로 자세한건 건너뛴다

설치과정 중간에 몇가지 설정만 변경하면 된다

*설치중 설정

-네트워크 설정-

IP : 192.168.11.254

GATEWAY : 192.168.11.1

PREFIX : 24

*설치후 설정

먼저 반드시 해줘야 하는 설정이 있다

해당 설정으로 방화벽을 꺼야한다

그 다음 라우터를 통해 연결될 내부 네트워크의 게이트웨이 역할을 해줄 인터페이스를 만들어야 한다

논리적인 방법과 물리적인 방법이 있는데 논리적인 방법은 실습환경에서는 실행이 잘되지만 실무적인 환경에서는 다르므로 물리적인 방법을 사용해야 한다 (alias는 장치가 있다고 속이는 것이기 떄문)

물리적 설정 : VMware 세팅으로 네트워크 포트 추가

WMware 설정으로 만들어야 한다 ( 실제 렌포트를 설치하는 것과 같기 때문에 리눅스를 끄고 해야한다 )

위 화면에서 edit virtual machine settings를 눌러준다

세팅창 밑에 Add를 눌러서 NAT상태의 네트워크를 추가로 만들어준다

부팅하면 두개의 서로 다른 UUID를 가진 인터페이스가 있다

각각 설정해준다

ens32

ens34

네트워크 재시작을 한 후 ifconfig로 적용 확인했다

테스트까지 현재 세팅으로 진행한다

다음으로 라우터 역할의 리눅스는 패킷이 자신을 지나갈 수 있도록 세팅을 바꿔주어야 한다 (기본적으로 막혀있다)

입력하고 저장한 후

여기까지 라우터 리눅스의 세팅이 완료됐다

- 192.168.11.11(리눅스) 192.168.11.12(윈도우) 192.168.12.11(리눅스) 설정

그 후 192.168.11.11과 192.168.12.11 (리눅스) 네트워크 설정이 잘 됐는지 확인해준다

추가로 테스트를 위해 NAT환경의 192.168.11.12 (윈도우)도 추가로 설치해준다

해당 윈도우의 설정은 아래와 같다

이후에 테스트를 위해 설치한 리눅스들과 연결이 되는 지를 확인해야 하는데

기본적으로 192.168.0.0/24에 있는 OS들은 다른 네트워크 주소를 보낼 시에 게이트웨이인 192.168.0.1로 나가고 (192.168.11.0/24로 가는 패킷은 이미 VMnet8을 통해 등록되어 있기 때문에 따로 등록하지 않아도 된다) 192.168.11.0/24에 있는 OS들은 게이트웨이인 192.168.11.1로 나가기 때문에 각각 OS에서 192.168.12.0/24로 패킷을 보낼 수 있게 라우팅 테이블에 등록해주어야 한다

먼저 192.168.0.156인 윈도우는 관리자권한으로 CMD를 연 후 아래와 같이 쳐준다

192.168.11.12인 윈도우는 관리자권한으로 CMD를 연 후 아래와 같이 쳐준다

그리고 192.168.11.11인 리눅스에서는 터미널에서 해당 코드를 쳐준다

*해당 명령어로 등록한 라우팅 정보는 재부팅시 사라지기 때문에 위에서 rc.local에 스크립트를 저장해준것과 같은 방법으로 해당 스크립트를 저장해주면 재부팅해도 그대로 사용 가능하다. (수정 후 반드시 권한설정을 해야한다 - 실행권한)

**마찬가지로 라우터역할의 리눅스에서도 rc.local에 포워딩 스크립트를 추가해준다

***다른 방법도 있는데 /etc/sysconfig/network-scripts/route-ens32 해당 파일에 아래의 정보를 추가해주는 것이다

세팅은 모두 완료했고 이제 테스트를 진행하자

- 핑 테스트

1) ping

편의를 위해 192.168은 제외하고 명칭한다

-Test 1

0.156 > 11.11

0.156 > 11.12

11.12는 윈도우 환경이라 핑을 무시한다.

11.12의 상태 확인을 위해 해당 윈도우에서 8.8.8.8과 11.254(라우터 리눅스) 11.11 그리고 12.11에 핑을 보내봤다

11.12 > 8.8.8.8

11.12 > 11.254

11.12 > 11.11

11.11 > 12.11

0.156 > 11.254

0.156 > 12.11

-Test 2

11.254 > 8.8.8.8

11.254 > 12.11

-Test 3

11.12 > 8.8.8.8

11.12 > 12.11

-Test 4

12.11 > 8.8.8.8

12.11 > 11.11

이렇게 서로 통신이 원할하게된 이유는 라우터리눅스의 역할과 라우팅 테이블에 목적지를 정해줬기 떄문이다

- 라우트 확인

2) Netstat / route -PRINT

Netstat 명령어를 통해 각각 라우팅 테이블에 어떻게 등록되어져 있는지 확인해보자

192.168.11.254 (라우터 역할 리눅스)

192.168.11.11 리눅스

192.168.12.11 리눅스

192.168.11.12 윈도우

192.168.0.156 메인 윈도우

- 경로 확인

3) traceroute

마지막으로 traceroute를 통해 메인 윈도우(192.168.0.156)에서 192.168.12.0/24까지 통신이 되는지 확인한다

통신이 모두 원할한 것을 확인했으니 세팅이 잘됐다는 것을 알 수 있다

운영 체크리스트

  • 대상 OS, 네트워크 대역, 계정 권한, 패키지 버전이 현재 환경과 맞는지 확인합니다.
  • 운영 장비에서 실행하기 전 랩 환경 또는 읽기 전용 명령으로 먼저 검증합니다.
  • 설정 변경, 서비스 재시작, 방화벽 변경, 디스크 작업은 백업과 롤백 경로를 준비한 뒤 진행합니다.
  • 본문의 IP, 계정명, 경로, 장비명은 예시 또는 당시 실습 환경 기준이므로 실제 환경 값으로 치환합니다.

원문 출처

원문: https://blog.naver.com/hermes_u/222309700643
네이버 카테고리: Linux, Unix
원문 작성일: 2021-04-14T14:40:00.000+09:00

If this article connects to a real product, infrastructure workflow, web app, or game launch, I can turn the rough signal into a small paid deliverable.

Best fit for network diagnosis, packet flow, routing, and service exposure review related to Linux 라우터 기반 NAT 환경 구축 실습. No login, private source code, production credential, or sensitive customer data is required for the first pass.

See paid service options

\n\n\n