이 기사에서는 ip
를 사용하여 Linux에서 라우팅을 구성하고 네트워크 경로를 관리하는 방법을 보여줍니다. Linux CentOS의 명령(라우팅 테이블을 보는 방법, 정적 경로 추가/제거 등). 이 기사는 ip
가 있는 다른 모든 Linux 배포판에 적용할 수 있습니다. 도구(Red Hat, Fedora 등)
Linux에서 라우팅을 관리하려면
ip
를 사용하는 것이 좋습니다. route
대신 명령 . route
명령은 라우팅 정책과 같은 고급 라우팅 기능을 구성하는 것을 허용하지 않으며 ip
를 사용하여 설정된 경우 특수 라우팅 설정을 표시할 수 없습니다. 도구.
Linux에서 네트워크 라우팅 테이블을 보는 방법
Linux에서 현재 라우팅 테이블을 표시하려면 다음 명령을 실행하십시오.
# ip route
default via 192.168.1.1 dev enp0s3
이 예에서 enp0s3 인터페이스를 사용하는 기본 게이트웨이입니다. 대상 IP 주소의 라우팅 테이블에 고정 경로가 없으면 패킷은 해당 게이트웨이(기본 경로)를 통해 전송됩니다.192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.201
인터페이스 192.168.1.201을 통한 192.168.1.0/24 네트워크의 고정 경로입니다.proto kernel
커널에 의해 생성된 경로입니다(proto static
– 관리자가 추가한 경로);metric
는 경로 우선 순위입니다(메트릭 값이 작을수록 우선 순위가 높음). 동일한 메트릭을 가진 두 개의 경로가 있는 경우(절대로 수행하지 마십시오!) 커널은 경로를 무작위로 선택합니다.
트래픽을 특정 IP 주소로 라우팅하는 데 사용되는 인터페이스(게이트웨이)를 찾으려면 다음 명령이 사용됩니다.# ip route get 192.168.2.45
192.168.1.1 dev enp0s3 src 192.168.1.201을 통한 192.168.2.45둘 이상의 인터페이스가 있는 Linux 서버를 라우터 또는 인터넷 게이트웨이로 사용할 수 있습니다. 여러 인터페이스 간의 패킷 라우팅을 활성화하려면
net.ipv4.ip_forward = 1
을 활성화합니다. 커널 매개변수. Linux에서 정적 경로 추가 및 제거
Linux 라우팅 테이블의 특정 IP 네트워크에 새 경로를 추가하려면 다음 명령을 실행하십시오.
# ip route add 192.168.0.0/24 via 192.168.1.1
따라서 게이트웨이 192.168.1.1을 통해 192.168.0.0/24 IP 네트워크에 대한 경로를 추가합니다.
ip route 명령의 형식은 Cisco IOS 구문과 매우 유사합니다. 여기에 약어를 사용할 수도 있습니다. 예를 들어 ip pro ad
를 사용할 수 있습니다. ip route add
대신 .
단일 IP 주소(호스트)에 대해 별도의 고정 경로를 추가할 수도 있습니다.
# ip route add 192.168.1.0 via 192.168.1.1
널 경로를 만들 수 있습니다. Cisco와 유사(ip route null0
). 호스트에 대한 경로가 없음으로 인해 이 네트워크로 전송된 패킷이 삭제되었습니다. :
# ip route add blackhole 10.1.20.0/24
이 방법을 사용하여 추가한 경로는 임시이며 네트워크 서비스나 서버를 다시 시작할 때까지 작동합니다.
수동으로 생성된 고정 경로를 제거하려면 다음 명령을 실행하십시오.
# ip route del 192.168.0.0/24
보시다시피 Linux 라우팅 테이블에서 경로가 제거되었습니다.
영구 경로를 추가하려면 경로에 대한 파일을 생성하거나 rc.local에 규칙을 추가해야 합니다. 파일(호스트 시작 시 실행).
영구 고정 경로를 추가하려면 라우팅에 사용할 네트워크 인터페이스의 이름이 필요합니다. 다음 명령을 사용하여 네트워크 인터페이스 이름을 얻을 수 있습니다.
# ip a
제 경우에는 enp0s3입니다. .
다음은 RHEL/CentOS Linux의 네트워크 인터페이스 구성에 대한 자세한 기사입니다.
그런 다음 다음 파일을 엽니다.
# nano /etc/sysconfig/network-scripts/route-enp0s3
여기에 경로가 포함된 행을 추가하십시오.
192.168.1.1을 통해 192.168.0.0/24
파일에 경로를 추가한 후 네트워크를 다시 시작합니다. 서비스:
# service network restart
네트워크를 다시 시작한 후 라우팅 테이블에 고정 경로가 나타났습니다.
명령을 사용하여 rc.local에 새 경로를 추가할 수도 있습니다. 서버가 부팅될 때 자동으로 정적 경로를 추가하기 위해 파일. 파일 열기:
# nano /etc/rc.local
그리고 고정 경로를 추가하는 명령어를 입력하세요:
# ip route add 192.168.0.0/24 via 192.168.1.1
그런 다음 서버를 다시 시작하면 시스템 부팅 중에 경로가 자동으로 추가됩니다.
Linux에서 기존 경로 항목 수정
기존 경로를 변경하려면 ip route replace를 사용할 수 있습니다. 명령:
# ip route replace 192.168.0.0/24 via 192.168.1.1
라우팅 테이블의 모든 임시 경로를 재설정하려면 네트워크 서비스를 다시 시작하세요.
# service network restart
네트워크 다시 시작(systemctl을 통해):[ 확인 ]
# ip route
기본값은 192.168.1.1 dev enp0s3 proto static metric 100192.168.0.0/24 를 통해 192.168.1.1 dev enp0s3 protostatic metric 10 scope 100192.168.1.0/24 proto kernel168.1.0/24 rc kernel190s3을 통해 기본적으로 제공됩니다.Linux에서 기본 경로 또는 기본 게이트웨이를 변경하는 방법
ip route del을 사용하여 기본 경로를 제거할 수 있습니다. 명령:
# ip route del default via 192.168.1.1 dev enp0s3
새 기본 경로를 설정하려면 CentOS/RHEL Linux에서 다음 명령을 사용합니다.
# ip route add default via 192.168.1.2
(게이트웨이 IP 주소를 통한 경로)
# ip route add default via enp0s3
(디바이스 이름을 사용하는 경로)기본 경로 설정을 변경하려면 다음 명령이 사용됩니다.
# ip route replace default via 192.168.1.2