동일 호스트의 VM간 트래픽이 외부를 거처서 이동합니다.
글쓴이: twinwings / 작성시간: 수, 2018/10/24 - 12:53오후
해결하려는 문제는 같은 호스트를 공유하는 VM간 트래픽이 외부 스위치/라우터를 거치는 바람에
쓰루풋이 매우 안나오는 상황입니다. 어떻게 해야 외부를 거치지 않고 통신할 수 있을까요?
일단 두 VM형상은 아래 그림처럼 되어 있구요.
1) 통신하고자 하는 VM의 IP 대역이 다릅니다. (IP대역은 같게 설정하면 브릿지를 통해서만 통신이 됩니다.)
2) NAT 쓰지 않습니다.
3) VM 내부에 상대 VM에 대한 MAC Learning은 되어 있습니다. (ARP 테이블에 수동입력한 상태입니다.)
4) 호스트의 라우팅 테이블 또한 수동으로 입력된 상태입니다.
+HOST----------------------------------------------------------------------------+ | | | | | | | | | +VM1-------------+ +VM2--------------+ | | | | | | | | | | | | | | | | | | | | | | | | | | | 192.168.10.0/24 | 192.168.11.0/24 | | | ens3 | | ens3 | | | +--------+-------+ +--------+--------+ | | | | | | | | | | +------------------------------------------+ | | | vnet3 vnet4 | | | | | | | | | | | | | | | +Linux Bridge------------------------------+ | | | | | | | | | | | +--------------------------------------------------------------------------------+
호스트의 라우팅테이블입니다.
[root@localhost ~]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default gateway 0.0.0.0 UG 100 0 0 eno1 VM1 0.0.0.0 255.255.255.255 UH 0 0 0 vnet3 VM2 0.0.0.0 255.255.255.255 UH 0 0 0 vnet4
Forums:
혹시 vm1과 vm2의 게이트웨이는 호스트가 아닌
혹시 vm1과 vm2의 게이트웨이는 호스트가 아닌 스위치 인가요?
감사합니다. 말씀해주신 부분으로 해결하였습니다.
감사합니다. 말씀해주신 부분으로 해결하였습니다.(VM에 라우팅 테이블 엔트리 추가)
VM에 ARP테이블만 러닝시키면 맥주소/인터페이스 참조해서 나갈거라고 생각했네요... 생각이 짧았습니다.
댓글 달기