| |
| {# |
| Copyright 2017-present Open Networking Foundation |
| |
| 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. |
| #} |
| |
| |
| // This is a commented JSON data file. The comments must stripped from the |
| // file before passing it to a JSON parser. This can be done various way |
| // including the JavaScript JSON.minify() function or a simple sed script |
| // such as "catting" this file through sed -e '|s//.*$||g'. |
| |
| |
| // This file represents the network configuration for the cord demo pod number |
| // two (2). |
| { |
| "ports" : { |
| |
| // Leaf-1/port-1 connected to cord-r2-s1/eth0 |
| "of:0000000000000021/1" : { |
| "interfaces" : [ |
| { |
| "ips" : [ "10.3.1.254/24" ] // Represents a fake gateway |
| // for this subnet. ONOS will |
| // ARP this and respond. |
| } |
| ] |
| }, |
| |
| // Leaf-1/port-2 connected to cord-r2-s2/eth0 |
| "of:0000000000000021/2" : { |
| "interfaces" : [ |
| { |
| "ips" : [ "10.3.1.254/24" ] // Represents a fake gateway |
| // for this subnet. ONOS will |
| // ARP this and respond. |
| }, |
| { |
| "vlan" : "1000" // cross-connect s-tag 1000 to Tibit OLT |
| }, |
| // Need to specify the public IP for the vSG |
| { |
| "ips" : [ "10.3.1.130/32" ] // vSG public IP address /32 |
| } |
| ] |
| }, |
| |
| // Leaf-1/port-129 connected to Tibit OLT |
| // The physical port is port 25, but we are using a break out cable and thus the switch |
| // create virtual ports |
| "of:0000000000000021/129" : { |
| "interfaces" : [ |
| { |
| "name" : "tibit-olt", // unused |
| "vlan" : "1000" // cross-connect s-tag 42 to vSG |
| } |
| ] |
| }, |
| |
| // Leaf-2/port-3 connected to cord-r2-s3/eth0 |
| "of:0000000000000022/3" : { |
| "interfaces" : [ |
| { |
| "ips" : [ "10.3.2.254/24" ] // Represents a fake gateway |
| // for this subnet. ONOS will |
| // ARP this and respond. |
| } |
| ] |
| }, |
| |
| // Leaf-2/port-4 connected to cord-r2-s4/eth0 |
| "of:0000000000000022/4" : { |
| "interfaces" : [ |
| { |
| "ips" : [ "10.3.2.254/24" ] // Represents a fake gateway |
| // for this subnet. ONOS will |
| // ARP this and respond. |
| } |
| ] |
| } |
| }, |
| |
| "devices" : { |
| "of:0000000000000021" : { |
| "segmentrouting" : { |
| "name" : "leaf-1", |
| "nodeSid" : 101, |
| "routerIp" : "10.3.1.254", |
| "routerMac" : "cc:37:ab:7c:b9:d6", |
| "isEdgeRouter" : true, |
| "adjacencySids" : [] |
| } |
| }, |
| "of:0000000000000022" : { |
| "segmentrouting" : { |
| "name" : "leaf-2", |
| "nodeSid" : 102, |
| "routerIp" : "10.3.2.254", |
| "routerMac" : "cc:37:ab:7c:ba:da", |
| "isEdgeRouter" : true, |
| "adjacencySids" : [] |
| } |
| }, |
| "of:0000000000000011" : { |
| "segmentrouting" : { |
| "name" : "spine-1", |
| "nodeSid" : 103, |
| "routerIp" : "10.2.30.1", |
| "routerMac" : "cc:37:ab:7c:be:68", |
| "isEdgeRouter" : false, |
| "adjacencySids" : [] |
| } |
| }, |
| "of:0000000000000012" : { |
| "segmentrouting" : { |
| "name" : "spine-2", |
| "nodeSid" : 104, |
| "routerIp" : "10.2.30.2", |
| "routerMac" : "cc:37:ab:7c:bf:ee", |
| "isEdgeRouter" : false, |
| "adjacencySids" : [] |
| } |
| } |
| }, |
| "links": { |
| // spine 1/1 connected to leaf 1/31 |
| "of:0000000000000011/1-of:0000000000000021/31": { |
| "basic": {} |
| }, |
| |
| // spine 1/2 connected to leaf 2/31 |
| "of:0000000000000011/2-of:0000000000000022/31": { |
| "basic": {} |
| }, |
| |
| // spine 2/1 connected to leaf 1/32 |
| "of:0000000000000012/1-of:0000000000000021/32": { |
| "basic": {} |
| }, |
| |
| // spine 2/2 connected to leaf 2/32 |
| "of:0000000000000012/2-of:0000000000000022/32": { |
| "basic": {} |
| }, |
| |
| // leaf 1/31 connected to spine 1/1 |
| "of:0000000000000021/31-of:0000000000000011/1": { |
| "basic": {} |
| }, |
| |
| // leaf 1/32 connected to spine 2/1 |
| "of:0000000000000021/32-of:0000000000000012/1": { |
| "basic": {} |
| }, |
| |
| // leaf 2/31 connected to spine 1/2 |
| "of:0000000000000022/31-of:0000000000000011/2": { |
| "basic": {} |
| }, |
| |
| // leaf 2/23 connected to spine 2/2 |
| "of:0000000000000022/32-of:0000000000000012/2": { |
| "basic": {} |
| } |
| }, |
| "hosts" : { |
| // cord-r2-s1 iface eth0 |
| "3c:fd:fe:9e:93:10/-1" : { |
| "basic": { |
| "ips": ["10.3.1.1"], // host IP on fabric |
| "location": "of:0000000000000021/1" // link back to fabric leaf-1/port-1 |
| } |
| }, |
| |
| // cord-r2-s2 iface eth0 |
| "3c:fd:fe:9e:8a:88/-1" : { |
| "basic": { |
| "ips": ["10.3.1.2"], // host IP on fabric |
| "location": "of:0000000000000021/2" // link back to fabric leaf-1/port-2 |
| } |
| }, |
| |
| // fa:16:3e:94:7e:c5 |
| // fa:16:3e:94:7e:c5 |
| // OLD: 02:42:0a:03:01:82 |
| |
| "fa:16:3e:94:7e:c5/-1" : { // vSG1 |
| "basic": { |
| "ips": ["10.3.1.130"], // vSG1 public IP address |
| "location": "of:0000000000000001/5" |
| } |
| }, |
| |
| // OLD: 02:42:0a:03:01:83 |
| "fa:16:3e:91:82:6a/-1" : { // vSG1 VM |
| "basic" : { |
| "ips": ["10.3.1.131"], |
| "location": "of:0000000000000001/5" |
| } |
| }, |
| |
| // cord-r2-s3 iface eth0 |
| "3c:fd:fe:9e:94:98/-1" : { |
| "basic": { |
| "ips": ["10.3.2.1"], // host IP on fabric |
| "location": "of:0000000000000022/3" // link back to fabric leaf-2/port-3 |
| } |
| }, |
| |
| // cord-r2-s4 iface eth0 |
| "3c:fd:fe:9e:97:98/-1" : { |
| "basic": { |
| "ips": ["10.3.2.2"], // host IP on fabric |
| "location": "of:0000000000000022/4" // link back to fabric leaf-2/port-4 |
| } |
| } |
| }, |
| "apps" : { |
| "org.onosproject.core" : { |
| "core" : { |
| "linkDiscoveryMode" : "STRICT" // enable strict link validation |
| } |
| } |
| } |
| } |