XenServer Network (LACP Bond, VLAN and Bonding) Configuration – Part 3

Step 4: XenServer Active/Passive Network Bonding

Now let’s take a look at storage and management traffic. This server currently only has two PIFs left for use and as such there are two options for how to proceed.

Each of the remaining PIFs could be used for one type of traffic or the two PIFs could be bonded together in an active/passive fail-over with both management and storage traffic going across the same set of PIFs (please note that according to Citrix, the management interface doesn’t support load balancing).

This process will be completed in a similar fashion to the LACP bond previously. The first step is to create the network for this bond.

# xe network-create name-label="Management/Storage Bond"
# xe network-list name-label="Management/Storage Bond"
Create XenServer Active/Passive Bonding

Create XenServer Active/Passive Bonding

Confirm XenServer Active/Passive Bonding

Confirm XenServer Active/Passive Bonding

Again don’t forget to keep track of the UUID as it will be needed to attach PIFs to the bond network that is about to be created. The next step is to actually create the bond and in order to do this, the UUID for the other two PIFs will need to be determined.

# xe pif-list device=eth2 
# xe pif-list device=eth3
# xe bond-create mode=active-backup network-uuid=<network_UUID> pif-uuids=<PIF_UUIDs>

Be sure to substitute the proper information from the prior commands for the UUIDs in the last command. At this point the system will return the UUID of the bond that was created.

Create XenServer Network Bond

Create XenServer Network Bond

Then the creation of the bond can be confirmed with another xe command.

# xe bond-list 
Confirm XenServer Network Bond UUID's

Confirm XenServer Network Bond UUID’s

From the output here, the UUIDs of the bonds can be compared. Notice that the second UUID matches the UUID returned from the bond-create command in the above photo.

At this point the 4 PIF interfaces on this XenServer are members of bonds. One of the bonds is a trunk and has one VLAN tag network ready to be sent across this trunk bond. The other bond is an active/passive bond that is used for network storage as well as management of the XenServer itself.

For illustrative purposes, once these networks have been created, they can also be verified within Citrix’s XenCenter application rather than the command line. This guide has used the CLI for these tasks as XenCenter is not installable on Linux.

Verify XenServer Network Configuration

Verify XenServer Network Configuration

This concludes this brief introduction to networking in XenServer. The next article in this series will begin working with XenServer storage solutions. Please feel free to leave any comments or questions below!

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

Rob Turner

Rob Turner is an avid Debian user as well as many of the derivatives of Debian such as Devuan, Mint, Ubuntu, and Kali. Rob holds a Masters in Information and Communication Sciences as well as several industry certifications from Cisco, EC-Council, ISC2, Linux Foundation, and LPI.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

4 Responses

  1. Eric Pretorious says:

    Thanks, Rob:

    Can you recommend some way of identifying the UUID of the XenServer host’s Primary Management Interface (PMI) from the command-line?

    Eric Pretorious
    Portland, Oregon

    • Rob Turner says:


      Sure! xe pif-list management=true host-name-label= or if you want only the UUID only you can run the following command: xe pif-list management=true host-name-label= | head -1 | awk -F ‘: ‘ ‘{print $2}’

      xe pif-list management=true host-name-label=


      uuid ( RO) : 2ba82249-cc18-8525-3a3a-289890665e08
      Device ( RO): eth0
      currently-attached ( RO): true
      VLAN ( RO): -1
      network-uuid ( RO): 5798e0f4-d84a-ae3e-c090-709f70a016ac

      xe pif-list management=true host-name-label= | head -1 | awk -F ‘: ‘ ‘{print $2}’




  2. Abhinav says:

    Nicely documented !!

Got something to say? Join the discussion.

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.