diff options
Diffstat (limited to 'tutorial/ovn/env3')
-rwxr-xr-x | tutorial/ovn/env3/packet1.sh | 19 | ||||
-rwxr-xr-x | tutorial/ovn/env3/packet2.sh | 31 | ||||
-rwxr-xr-x | tutorial/ovn/env3/setup.sh | 44 |
3 files changed, 94 insertions, 0 deletions
diff --git a/tutorial/ovn/env3/packet1.sh b/tutorial/ovn/env3/packet1.sh new file mode 100755 index 000000000..6d26e587d --- /dev/null +++ b/tutorial/ovn/env3/packet1.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +set -o xtrace + +# Trace a packet from sw0-port1 to sw0-port3. +ovs-appctl ofproto/trace br-int in_port=1,dl_src=00:00:00:00:00:01,dl_dst=00:00:00:00:00:03 -generate diff --git a/tutorial/ovn/env3/packet2.sh b/tutorial/ovn/env3/packet2.sh new file mode 100755 index 000000000..0de461f52 --- /dev/null +++ b/tutorial/ovn/env3/packet2.sh @@ -0,0 +1,31 @@ +#!/bin/bash +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +set -o xtrace + +# +# This trace simulates a packet arriving over a Geneve tunnel from a remote OVN +# chassis. The fields are as follows: +# +# tun_id - +# The logical datapath (or logical switch) ID. In this case, we only +# have a single logical switch and its ID is 1. +# +# tun_metadata0 - +# This field holds 2 pieces of metadata. The low 16 bits hold the logical +# destination port (1 in this case). The upper 16 bits hold the logical +# source port (3 in this case. +# +ovs-appctl ofproto/trace br-int in_port=3,dl_src=00:00:00:00:00:03,dl_dst=00:00:00:00:00:01,tun_id=1,tun_metadata0=$[1 + $[3 << 16]] -generate diff --git a/tutorial/ovn/env3/setup.sh b/tutorial/ovn/env3/setup.sh new file mode 100755 index 000000000..b554d257a --- /dev/null +++ b/tutorial/ovn/env3/setup.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +set -o xtrace + +ovn-nbctl lswitch-add sw0 + +ovn-nbctl lport-add sw0 sw0-port1 +ovn-nbctl lport-add sw0 sw0-port2 +ovn-nbctl lport-add sw0 sw0-port3 +ovn-nbctl lport-add sw0 sw0-port4 + +ovn-nbctl lport-set-macs sw0-port1 00:00:00:00:00:01 +ovn-nbctl lport-set-macs sw0-port2 00:00:00:00:00:02 +ovn-nbctl lport-set-macs sw0-port3 00:00:00:00:00:03 +ovn-nbctl lport-set-macs sw0-port4 00:00:00:00:00:04 + +ovn-nbctl lport-set-port-security sw0-port1 00:00:00:00:00:01 +ovn-nbctl lport-set-port-security sw0-port2 00:00:00:00:00:02 +ovn-nbctl lport-set-port-security sw0-port3 00:00:00:00:00:03 +ovn-nbctl lport-set-port-security sw0-port4 00:00:00:00:00:04 + +# Bind sw0-port1 and sw0-port2 to the local chassis +ovs-vsctl add-port br-int lport1 -- set Interface lport1 external_ids:iface-id=sw0-port1 +ovs-vsctl add-port br-int lport2 -- set Interface lport2 external_ids:iface-id=sw0-port2 + +# Create a fake remote chassis. +ovn-sbctl chassis-add fakechassis geneve 127.0.0.1 + +# Bind sw0-port3 and sw0-port4 to the fake remote chassis. +ovn-sbctl lport-bind sw0-port3 fakechassis +ovn-sbctl lport-bind sw0-port4 fakechassis |