회사에서 관리하는 클라우드 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

  1. 윈도우찬양론자
    2012.04.06 14:21 신고

    앗싸1등이네요~
    감사합니다.
    리눅스 그점이 약간 불편하긴 합니다ㅋ

  2. 용한
    2012.04.07 12:32 신고

    ㅋㅋ 당연한. 원래 돈 안되는 OS는 불편한게 당연하죠.
    초보자를 위해서 잘 설명 해주셨군요.

    윈도우도 레지스트리나 그런데 저장 하고 있는데.
    리눅스는 레지스터리가 없잖아요. /etc/sysconfig/ 디렉토리에 저장 하는게 당연하죠.

    • sym1303
      2012.07.31 19:43 신고
      수정 및 삭제

      "원래 돈 안되는 OS는 불편한게 당연하죠."라뇨? 이게 다 보안을 위해서입니다. 따지고 보면 운영체제중에서 유일하게 윈도우만 변종입니다. 윈도우만 쉽다는게 아니다는것이죠. 그리고 돈이 안되는게 아니라 GNU 라이센스때문입니다.

    • ㅋㅋㅋㅋㅋㅋㅋ
      2012.12.30 20:45 신고
      수정 및 삭제

      아는척쩐다. 꼭 운영체제에 운자도 모르고 윈도우의 윈도 모르고 리눅스의 리도 모르는 애들이 꼭 이런소리 하더라 ㅋㅋ
      선무당이 사람잡는다고 막 나대지말고 걍 짜져있길 바람

  3. vismag1
    2012.04.09 03:11 신고

    snoopy님 안녕하세요 얌체같이 그동안 보고만 가고... 암튼 처음으로 인사드립니다.
    어느듯 저의 no.1 favorite blog가 되버렸네요 항상 감사합니다.
    이 포스트와 별 상관 없는 뻘 뎃글올려 다른 분들게는 죄송합니다.

  4. 나그네
    2012.04.09 12:30 신고

    안녕하세요 ^^ 스누피님
    간만에 블로그 오니까용... 악성코드 경고가 나오는데요.. ㅠ

  5. 미니아
    2012.04.09 13:43 신고

    크롬에서 악성코드 경고 뜨네요. 어떤 배너가 잘못된 것 같군요.

  6. 미니아
    2012.04.09 13:50 신고

    hackma.tistory.com
    여기랑 관련된 악성코드라고 뜨네요.

  7. 믓쟁이쫑
    2012.04.24 15:06 신고

    감사합니다.~ 계속 route 명령만 찾고있었는데 이런 방법이 있었군요.