최근에는 Linux 관리 인증서에 대해 배웠습니다. 아래와 같이 라우팅에 대한 질문을 찾았습니다.
# route Kernel IP routing table +----------------+-------------+----------------+------+------+ |Destination |Gateway |Genmask |Flags |Inface| +----------------+-------------+----------------+------+------+ |192.168.180.128 |* |255.255.255.192 |U |eth1 | |192.168.40.0 |* |255.255.255.0 |U |eth0 | |192.168.0.0 |* |255.255.0.0 |U |eth2 | |Default |192.168.40.2 |0.0.0.0 |UG |eth0 | +----------------+-------------+----------------+------+------+
답변(굵은 글씨는 좋은 답변):
A. 192.168.180.180에 대한 트래픽은 eth1을 통해 라우팅됩니다.
B. 192.180.240에 대한 트래픽은 eth1을 통해 라우팅됩니다.
C. 192.168.0.42에 대한 트래픽은 eth2를 통해 라우팅됩니다.
D. 192.168.42.42에 대한 트래픽은 eth2를 통해 라우팅됩니다.
E. 192.168.42.42에 대한 트래픽은 eth0을 통해 라우팅됩니다.
F. 192.168.180.180에 대한 트래픽은 eth0을 통해 라우팅됩니다.
나는 기본적인 라우팅 지식을 갖고 있으며 일반적인 규칙은 다음과 같습니다.
- 목록을 위에서 아래로 스캔하세요.
- 일치하는 항목이 없으면 기본 일치 항목이 사용됩니다.
- 여러 회선이 일치하는 경우 게이트웨이가 가장 긴 회선이 사용됩니다.
하지만 표시된 답변을 이해할 수 없습니다. 누군가 이것을 설명할 수 있나요?
- 192.168.180.240이 eth1을 통해 라우팅되지 않는 이유는 무엇입니까?
- 192.168.42.42가 eth2를 통해 라우팅되는 이유
답변1
마스크에 대해 간략하고 (다소 단순한) 설명을 하는 것이 적절해 보입니다. 주소(예: 192.168.180.128)와 마스크(예: 255.255.255.192)가 주어지면 마스크의 0 비트는 주소의 어느 비트가 다를 수 있는지 나타냅니다. 255의 모든 비트는 1이므로 처음 세 옥텟은 다를 수 없습니다. 네 번째 옥텟인 192_10 = 1100 0000_2에서 처음 6비트는 0이므로 이 비트만 변경할 수 있습니다.
192.168.180.240의 경우 비트 7도 다릅니다(240_10 = 1111 0000_2 및 128_10 = 1000 0000_2). 이를 허용하려면 마스크가 255.255.255.128 이상이어야 합니다. 따라서 해당 게이트웨이를 통해 라우팅될 수 없습니다. 128과 180에서는 비트 3, 5, 6만 다르기 때문에 192.168.180.180이 적합합니다.
마찬가지로 192.168.42.42에는 192.168.40.0보다 마스크 255.255.254.0이 필요합니다. 마스크가 255.255.0.0인 192.168.0.0에 맞으므로 이것이 라우팅되는 방식입니다.