나는 다음과 같은 설정을 가지고 있습니다 :
10.5.128.150
Ubuntu Ubuntu eth2 <------> server (10.5.128.154)
client eth1 <----> eth1 Router eth3 <------>
10.5.129.179 10.5.129.39 10.5.130.201
따라서 Ubuntu 라우터는 세 가지 도메인을 관리합니다.
- 10.5.129.0/24: 클라이언트가 사는 곳입니다.
- 10.5.128.0/24: eth2에 의해 관리되며 서버에 연결됩니다.
- 10.5.130.0/24: eth3에 의해 관리됨
여기에 대한 답변을 따르십시오.https://askubuntu.com/a/168037/347674, 라우터를 10.5.128.0/24 트래픽의 게이트웨이로 사용하도록 클라이언트를 구성했습니다.
이것은 라우터의 라우팅 테이블입니다.
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
....
10.5.128.0 * 255.255.255.0 U 0 0 0 eth2
10.5.129.0 * 255.255.255.0 U 0 0 0 eth1
10.5.130.0 * 255.255.255.0 U 0 0 0 eth3
제가 보기에는 괜찮아 보이지만 클라이언트에서 해당 서버에 ping을 시도하면 응답이 없습니다.
# ping -n -I eth1 10.5.128.154
PING 10.5.128.154 (10.5.128.154) from 10.5.129.179 eth1: 56(84) bytes of data.
라우터는 ping 트래픽이 라우터의 eth1에 올바르게 입력되고 있음을 보여줍니다.
# tcpdump -n -i eth1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
15:20:17.428153 IP 10.5.129.179 > 10.5.128.154: ICMP echo request, id 909, seq 170, length 64
15:20:17.618104 IP 10.5.129.179 > 10.5.128.154: ICMP echo request, id 874, seq 2534, length 64
15:20:18.427959 IP 10.5.129.179 > 10.5.128.154: ICMP echo request, id 909, seq 171, length 64
하지만 라우터의 핑 블랙홀. 내가 예상한 것처럼 eth2 인터페이스를 벗어나지 않습니다.
# tcpdump -n -i eth2
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes
(비어있습니다.)
실제로는 아무데도 가지 않습니다.
# tcpdump -n -i any icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
15:31:53.138046 IP 10.5.129.179 > 10.5.128.154: ICMP echo request, id 874, seq 3224, length 64
15:31:54.145980 IP 10.5.129.179 > 10.5.128.154: ICMP echo request, id 874, seq 3225, length 64
15:31:55.154033 IP 10.5.129.179 > 10.5.128.154: ICMP echo request, id 874, seq 3226, length 64
라우팅 테이블에 따라 eth2에서 ping을 요청하면 안 되나요? 아니면 eth2에서 패킷을 가져오려면 Ubuntu 라우터에서 다른 것을 구성해야 합니까?