として、私は次のセットアップがありますOpenStackの中性子 - VM同じテナント内の2つのネットワーク間のルータ
VM1 --- NET1を--- --- VM2 NET2 --- VM3
VM2することができますVM1とVM3の両方にpingを実行します。しかし、VM1からVM3にpingを行うと、パケットはVM2によって転送されますが、VM3に到達することはありません(tcpdumpはVM2のNET2インターフェイスからパケットが送信されることを示しているため、NET2によって破棄されます)。
VM3からVM1にpingを実行する場合も同じです。パケットは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