<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from rtf -->
<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<font face="Calibri" size="2"><span style="font-size:11pt;">
<div><font color="red">replying to answer your questions from email below,</font></div>
<div><font color="red">see in-lined below,</font></div>
<div><font color="red">Greg.</font></div>
<div> </div>
<div>-----Original Message-----<br>

From: Outback Dingo <outbackdingo@gmail.com> <br>

Sent: Wednesday, May 11, 2022 12:00 AM<br>

To: starlingx-discuss@lists.starlingx.io<br>

Subject: [Starlingx-discuss] STX networking</div>
<div> </div>
<div>[Please note: This e-mail is from an EXTERNAL e-mail address]</div>
<div> </div>
<div>scenario...</div>
<div> </div>
<div>i have a host say controller-0</div>
<div> </div>
<div>prior to any ansible run</div>
<div><font color="red">[Greg] I assume you mean the bootstrap ansible playbook</font></div>
<div> </div>
<div>i need to create a bond, and bridges and vlans</div>
<div><font color="red">[Greg] You do need an interface to the outside world … e.g. in order to download container images from docker hub.</font></div>
<div><font color="red">[Greg] Why can you not simply create a single interface (one link of bond) with a vlan ?</font></div>
<div> </div>
<div>sure....</div>
<div>Add a bond device as root:</div>
<div> </div>
<div>ip link add bond0 type bond</div>
<div>ip link set bond0 type bond miimon 100 mode 80211.ad ip link set enp33s0 down ip link set snp33s0 master bond0 ip link set enp44s0 down ip link set enp44s0 master bond0 ip link set bond0 up</div>
<div> </div>
<div>Set VLAN on the bond device:</div>
<div> </div>
<div>ip link add link bond0 name bond0.1648 type vlan id 1648 ip link set bond0.1648 up ip link add link bond0 name bond0.1664 type vlan id 1664 ip link set bond0.1664 up ip link add link bond0 name bond0.1680 type vlan id 1680 ip link set bond0.1680 up</div>
<div> </div>
<div>Add the bridge device and attach VLAN to it:</div>
<div>ip link add br0 type bridge</div>
<div>ip link set bond0.1648 master br0</div>
<div>ip link set bond0.1664 master br0</div>
<div>ip link set bond0.1680 master br0</div>
<div>ip link set br0 up</div>
<div> </div>
<div>so i see where in starlingx</div>
<div><font color="red">[Greg] the following commands are only possible AFTER bootstrap</font></div>
<div> </div>
<div>system host-if-add -c platform -a 802.3ad -x layer2 controller-0 bond0 ae enp33s0 enp49s0 </div>
<div>system host-if-modify controller-0 $OAM_IF -c platform system interface-network-assign controller-0 $OAM_IF oam
<br>

system host-if-add controller-0 -V 1648 -c platform bond0.1648 vlan bond0 <br>

system host-if-add controller-0 -V 1664 -c platform bond0.1664 vlan bond0 <br>

system host-if-add controller-0 -V 1680 -c platform bond0.1680 vlan bond0</div>
<div> </div>
<div>does allow for me to create the bond0 and the vlans? but I dont see any documentation for bridges anywhere ? Do I even need the bridge.<br>

<font color="red">[Greg] No … there is no requirement for a bridge with StarlingX.</font></div>
<div> </div>
<div>where i want to set example, since each needs its own interface can i set OAM_IF=bond0, and say MGMT_IF=bond0.1664</div>
<div><font color="red">[Greg] Yes … i.e. OAM on port-based/untagged-vlan of bond and MGMT on vlan-tag=1664 on bond<br>

( BUT here is where you need the pxeboot network because your MGMT network is vlan-tagged … and you can't pxe boot over that )</font></div>
<div> </div>
<div>OAM_IF=bond0</div>
<div>system host-if-modify controller-0 $OAM_IF -c platform system interface-network-assign controller-0 $OAM_IF oam
<br>

system host-if-add controller-0 -V 1648 -c platform bond0.1648 vlan bond0 <br>

system host-if-add controller-0 -V 1664 -c platform bond0.1664 vlan bond0 <br>

system host-if-add controller-0 -V 1680 -c platform bond0.1680 vlan bond0 <br>

system host-if-add controller-0 -V 1672 -c platform bond0.1672 vlan bond0</div>
<div>MGMT_IF=bond0.1664</div>
<div>system host-if-modify controller-0 lo -c none IFNET_UUIDS=$(system interface-network-list controller-0 | awk '{if</div>
<div>($6=="lo") print $4;}')</div>
<div>for UUID in $IFNET_UUIDS; do</div>
<div>    system interface-network-remove ${UUID} <br>

done <br>

system host-if-modify controller-0 $MGMT_IF -c platform   <font color="red">[Greg] don't think you actually need this command </font><font color="red">
<br>

</font>system interface-network-assign controller-0 $MGMT_IF mgmt <br>

system interface-network-assign controller-0 $MGMT_IF cluster-host</div>
<div> </div>
<div>the reason for this being our switches are</div>
<div> </div>
<div># MGMT</div>
<div>interface vlan1648</div>
<div>  address 10.16.48.2/24</div>
<div>  address-virtual 44:38:39:FF:00:02 10.16.48.1</div>
<div>  vlan-id 1648</div>
<div>  vlan-raw-device bridge</div>
<div> </div>
<div>interface vlan1672</div>
<div>  address 10.16.72.2/24</div>
<div>  address-virtual 44:38:39:FF:00:03 10.16.72.1</div>
<div>  vlan-id 1672</div>
<div>  vlan-raw-device bridge</div>
<div> </div>
<div>interface vlan1680</div>
<div>  address 10.16.80.2/24</div>
<div>  address-virtual 44:38:39:FF:00:03 10.16.80.1</div>
<div>  vlan-id 1680</div>
<div>  vlan-raw-device bridge</div>
<div> </div>
<div>interface vlan1696</div>
<div>  address 10.16.96.2/24</div>
<div>  address-virtual 44:38:39:FF:00:03 10.16.96.1</div>
<div>  vlan-id 1696</div>
<div>  vlan-raw-device bridge</div>
<div> </div>
<div>interface vlan1664</div>
<div>  address 10.16.64.2/24</div>
<div>  address-virtual 44:38:39:FF:00:07 10.16.64.1</div>
<div>  vlan-id 1664</div>
<div>  vlan-raw-device bridge</div>
<div> </div>
<div>and further down DATAIF_0=bond0.1680</div>
<div> </div>
<div>the reason being we are trying to have starlingx conform to our networks topology I also noted: in</div>
<div><a href="https://docs.starlingx.io/deploy_install_guides/r6_release/ansible_bootstrap_configs.html#install-time-only-params-r6">https://docs.starlingx.io/deploy_install_guides/r6_release/ansible_bootstrap_configs.html#install-time-only-params-r6</a></div>
<div>...</div>
<div> </div>
<div>Network Properties I listed at the bottom</div>
<div> </div>
<div>can i modify these addresses to conform to our networks, as our switches wount pass the traffic you set as defaults, as seen in my first attempt at the bottom. Though i dont believe still dhcp/pxe will work on a vlan interface.</div>
<div> </div>
<div>Network Properties</div>
<div>pxeboot_subnet</div>
<div>pxeboot_start_address</div>
<div>pxeboot_end_address</div>
<div>management_subnet</div>
<div>management_start_address</div>
<div>management_end_address</div>
<div>cluster_host_subnet</div>
<div>cluster_host_start_address</div>
<div>cluster_host_end_address</div>
<div>cluster_pod_subnet</div>
<div>cluster_pod_start_addres</div>
<div>cluster_pod_end_address</div>
<div>cluster_service_subnet</div>
<div>cluster_service_start_address</div>
<div>cluster_service_end_address</div>
<div>management_multicast_subnet</div>
<div>management_multicast_start_address</div>
<div>management_multicast_end_address</div>
<div> </div>
<div>7: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc htb state UP group default qlen 1000</div>
<div>    link/ether b8:59:9f:12:34:f0 brd ff:ff:ff:ff:ff:ff</div>
<div>    inet 10.16.48.112/24 brd 10.16.48.255 scope global bond0</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet 10.16.48.114/24 scope global secondary bond0</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet6 fe80::ba59:9fff:fe12:34f0/64 scope link</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>8: vlan1664@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc htb state UP group default qlen 1000</div>
<div>    link/ether b8:59:9f:12:34:f0 brd ff:ff:ff:ff:ff:ff</div>
<div>    inet 192.168.204.2/24 brd 192.168.204.255 scope global vlan1664</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet 192.168.206.2/24 brd 192.168.206.255 scope global vlan1664:12</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet 169.254.202.1/24 scope global vlan1664</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet 192.168.206.1/24 scope global secondary vlan1664</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet 192.168.204.1/24 scope global secondary vlan1664</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet 192.168.204.4/24 brd 192.168.204.255 scope global secondary vlan1664</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>    inet6 fe80::ba59:9fff:fe12:34f0/64 scope link</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>9: vlan1672@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000</div>
<div>    link/ether b8:59:9f:12:34:f0 brd ff:ff:ff:ff:ff:ff</div>
<div>    inet6 fe80::ba59:9fff:fe12:34f0/64 scope link</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>10: vlan1648@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000</div>
<div>    link/ether b8:59:9f:12:34:f0 brd ff:ff:ff:ff:ff:ff</div>
<div>    inet6 fe80::ba59:9fff:fe12:34f0/64 scope link</div>
<div>       valid_lft forever preferred_lft forever</div>
<div>11: vlan1680@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000</div>
<div>    link/ether b8:59:9f:12:34:f0 brd ff:ff:ff:ff:ff:ff</div>
<div>    inet6 fe80::ba59:9fff:fe12:34f0/64 scope link</div>
<div>       valid_lft forever preferred_lft forever</div>
<div> </div>
<div>_______________________________________________</div>
<div>Starlingx-discuss mailing list</div>
<div><a href="mailto:Starlingx-discuss@lists.starlingx.io">Starlingx-discuss@lists.starlingx.io</a></div>
<div><a href="http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss">http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss</a></div>
<div> </div>
</span></font>
</body>
</html>