회사에서 관리하는 클라우드 VM 서버들이 보통 NIC를 2개 사용하고 있는데, 서비스망과 스토리지망을 분리해서 사용하고 있습니다. 그래서 스토리지망 NIC에는 Default Gateway를 설정하지 않는데, 동일 네트워크 L2 통신만 할 경우에는 문제가 없지만 다른 대역으로 통신해야 하는 경우 Gateway를 통해 나갈 수 있도록 라우팅 경로를 설정해줘야 합니다.

그런데 윈도우의 경우 route add 명령어에 -p 옵션을 붙이면 재부팅해도 사라지지 않는 영구 경로로 설정되지만, 리눅스는 route add 명령어로 설정을 해도 재부팅 해버리면 사라집니다. 따라서 다른 방법을 사용해야 하는데...

예를 들어 eth0가 서비스망이고 eth1이 스토리지 망이라면 eth1에 대한 라우팅 경로를 아래와 같이 설정할 수 있습니다.

우선 아래 이름으로 파일을 하나 생성합니다.

/etc/sysconfig/network-scripts/route-eth1

그리고 파일 내용은 아래와 같이 적어줍니다.

ADDRESS0=192.168.0.0
NETMASK0=255.255.128.0
GATEWAY0=192.168.20.1


위 예시는 192.168.0.1 부터 192.168.127.254 까지 IP에 대해서 192.168.20.1 이라는 Gateway를 타고 나가라는 설정을 의미합니다. 여러개의 규칙을 넣으시려면 ADDRESS, NETMASK, GATEWAY 뒤에 숫자를 1,2,3 이렇게 계속 붙여주시면 되구요.

파일을 생성한 다음 네트워크를 재시작 한번 해주시면 됩니다.

service network restart

이상입니다.

※ 추가
route-eth* 파일에 위 형식이 아닌 아래 형식으로 넣으셔도 됩니다. 위 예제와 동일한 라우팅을 추가하려면

192.168.0.0/17 via 192.168.20.1 dev eth1
secret