나는 다음과 같은 설정이 있습니다OpenStack은 중성자 - VM과 동일한 테넌트에서 두 네트워크 사이의 라우터
VM1 --- NET1 --- VM2 --- NET2 --- VM3
VM2 수를 VM1과 VM3 모두에 대해 ping을 수행합니다. 그러나 VM1에서 VM3으로 핑할 때 패킷은 VM2에 의해 전달되지만 결코 VM3에 도달하지 않습니다 (즉, tcpdump는 패킷이 VM2의 NET2 인터페이스에서 발송됨을 보여주기 때문에 NET2에 의해 삭제됩니다).
VM3에서 VM1으로 핑할 때와 동일합니다. 패킷이 VM2에 도달하면 VM2는 VM2를 V1로 전달하지만 절대로 VM1에 도달하지 않습니다.
NET2가 NET1의 srcIP가있는 패킷을 통과하지 못하는 것처럼 보입니다. NET2의 srcIP로 패킷을 필터링하는 NET1과 동일합니다.
우리는 열 템플릿에 각 네트워크를 만드는 방법입니다.
net1:
type: OS::Neutron::Net
properties:
name: net1_name
net1_subnet:
type: OS::Neutron::Subnet
properties:
network_id: { get_resource: net1 }
cidr: { get_param: net1_cidr }
라우터 역할을하는 VM2를 통해 NET1에서 NET2로 패킷을 흐르게하는 방법이 있습니까?
감사합니다.
========== 업데이트 ====
나는 해결책을 발견처럼 보이는 : 포트의 "allowed_address_pairs"에 VM1 및 VM3의 IP를 추가 (중성자 포트) VM2의
VM2_left_port:
type: OS::Neutron::Port
properties:
allowed_address_pairs: [{"ip_address": { get_param: VM3_IP}}]
network: ...
fixed_ips: ...
VM2_right_port:
type: OS::Neutron::Port
properties:
allowed_address_pairs: [{"ip_address": { get_param: VM1_IP }}]
network: ...
fixed_ips: ...
네트워크 간의 라우팅 (라우터로 VM2 사용)이 올바른지 여부는 질문입니다.
주석 주셔서 감사합니다,하지만 내 문제는 구성을 라우팅하지 않고 서브넷 사이의 기본 트래픽에 의한 OpenStack은 블록 ... 나는 대답으로 게시 할 예정입니다, 해결책을 발견했다. – Michael