Linux

[리눅스] ip rule 명령어 완벽 가이드 사용법(고급 라우팅 규칙 설정)

인생아 2024. 10. 23. 19:07
반응형

리눅스에서 ip rule 명령어는 정책 기반 라우팅(Policy-based routing, PBR)을 관리하기 위한 도구입니다. 정책 기반 라우팅은 기본적인 경로 설정과는 다르게, 소스 주소, 목적지 주소, 패킷의 특성 등에 따라 서로 다른 라우팅 테이블을 참조할 수 있게 하는 기능입니다. 일반적으로 고급 네트워크 설정에서 사용되며, 여러 개의 네트워크 인터페이스가 존재하거나, 특정 트래픽을 특정 경로로 전달해야 하는 상황에서 유용합니다.

ip rule 명령어의 기본 사용법

ip rule add [설정]

이 명령어는 새로운 라우팅 규칙을 추가하는데 사용됩니다. 또한 라우팅 규칙을 삭제하고 싶다면 del을 사용할 수 있습니다.

ip rule del [설정]

ip rule 명령어 주요 옵션

  1. from [IP주소]: 소스 IP를 기준으로 라우팅 규칙을 설정합니다.
  2. to [IP주소]: 목적지 IP를 기준으로 라우팅 규칙을 설정합니다.
  3. table [테이블 번호]: 참조할 라우팅 테이블을 지정합니다.
  4. priority [숫자]: 규칙의 우선순위를 설정합니다. 낮을수록 우선순위가 높습니다.

ip rule을 사용한 예시

특정 네트워크 인터페이스에서 들어오는 패킷을 다른 라우팅 테이블을 통해 처리하고 싶다고 가정해 봅시다. 예를 들어, 192.168.1.0/24 네트워크 대역의 트래픽을 테이블 100을 통해 처리하려는 상황입니다.

sudo ip rule add from 192.168.1.0/24 table 100

이 명령어는 192.168.1.0/24 대역에서 오는 트래픽이 라우팅 테이블 100을 사용하도록 설정합니다.

라우팅 테이블 확인

ip rule 명령어로 추가한 규칙을 확인하려면 다음 명령어를 사용합니다.

ip rule show
user@linux:~$ ip rule show
0:	from all lookup local 
32766:	from all lookup main 
32767:	from all lookup default 
100:	from 192.168.1.0/24 lookup 100

위의 예시는 192.168.1.0/24에서 들어오는 트래픽이 테이블 100을 참조하는 것을 확인할 수 있습니다. 기본적으로 local, main, default 테이블은 자동으로 제공됩니다.

ip rule 삭제 예시

필요에 따라 라우팅 규칙을 삭제할 수도 있습니다. 예를 들어, 앞에서 추가한 192.168.1.0/24 대역의 규칙을 삭제하려면 다음 명령어를 실행합니다.

sudo ip rule del from 192.168.1.0/24 table 100

삭제된 후 다시 ip rule show 명령어로 확인하면 해당 규칙이 사라졌음을 확인할 수 있습니다.

user@linux:~$ ip rule show
0:	from all lookup local 
32766:	from all lookup main 
32767:	from all lookup default

정책 기반 라우팅의 유용성

정책 기반 라우팅은 여러 네트워크 경로가 존재하거나, 특정 트래픽을 특정 경로로 보낼 필요가 있을 때 매우 유용합니다. 예를 들어, VPN을 통해 특정 트래픽을 보내거나, 다중 ISP를 사용할 때 유용하게 적용할 수 있습니다.

참고사이트

반응형