Ethernet configuration

Discover interfaces

Query

GET /discover_netifaces

Example request

GET /discover_netifaces HTTP/1.1
Host: xivoserver
Accept: application/json

Example response

HTTP/1.1 200 OK
Content-Type: application/json
{
   "lo":
   {
       "hwaddress": "00:00:00:00:00:00",
       "typeid": 24,
       "alias-raw-device": null,
       "network": "127.0.0.0",
       "family": "inet",
       "physicalif": false,
       "vlan-raw-device": null,
       "vlanif": false,
       "dummyif": false,
       "mtu": 65536,
       "broadcast": "127.255.255.255",
       "hwtypeid": 772,
       "netmask": "255.0.0.0",
       "carrier": true,
       "flags": 9,
       "address": "127.0.0.1",
       "vlan-id": null,
       "type": "loopback",
       "options": null,
       "aliasif": false,
       "name": "lo"
   },
   "eth0":
   {
       "alias-raw-device": null,
       "family": "inet",
       "hwaddress": "36:76:70:29:69:c2",
       "vlan-id": null,
       "network": "172.17.0.0",
       "physicalif": false,
       "vlan-raw-device": null,
       "vlanif": false,
       "type": "eth",
       "aliasif": false,
       "broadcast": "172.17.255.255",
       "netmask": "255.255.0.0",
       "address": "172.17.0.101",
       "typeid": 6,
       "name": "eth0",
       "hwtypeid": 1,
       "dummyif": false,
       "mtu": 1500,
       "carrier": true,
       "flags": 3,
       "options": null
   }
}

Get interface

Query

GET /netiface/<interface>

Example request

GET /netiface/eth0 HTTP/1.1
Host: xivoserver
Content-Type: application/json

Example response

HTTP/1.1 200 OK
Content-Type: application/json
{
   "eth0":
   {
       "alias-raw-device": null,
       "family": "inet",
       "hwaddress": "36:76:70:29:69:c2",
       "vlan-id": null,
       "network": "172.17.0.0",
       "physicalif": false,
       "vlan-raw-device": null,
       "vlanif": false,
       "type": "eth",
       "aliasif": false,
       "broadcast": "172.17.255.255",
       "netmask": "255.255.0.0",
       "address": "172.17.0.101",
       "typeid": 6,
       "name": "eth0",
       "hwtypeid": 1,
       "dummyif": false,
       "mtu": 1500,
       "carrier": true,
       "flags": 3,
       "options": null
   }
}

Modify interface

Description

Field Values Description
iface string Interface name like eth0
method list static or dhcp
address string  
netmask string  
broadcast string  
gateway string  
mtu int  
auto boolean  
up boolean  
options list dns-search and dns-nameservers

Query

PUT /modify_physical_eth_ipv4

Example request

PUT /modify_physical_eth_ipv4 HTTP/1.1
Host: xivoserver
Content-Type: application/json
{
    "ifname': "eth0",
    "method': "dhcp",
    "auto": "True"
}

Replace virtual interface

Query

PUT /replace_virtual_eth_ipv4

Example request

PUT /replace_virtual_eth_ipv4 HTTP/1.1
Host: xivoserver
Content-Type: application/json
{
    "ifname": "eth0:0",
    "new_ifname": "eth0:1",
    "method": "dhcp",
    "auto": "True"
}

Modify interface

Query

PUT /modify_eth_ipv4

Example request

PUT /modify_eth_ipv4 HTTP/1.1
Host: xivoserver
Content-Type: application/json
{
    'ifname' : 'eth0'
    'address': '192.168.0.1',
    'netmask': '255.255.255.0',
    'broadcast': '192.168.0.255',
    'gateway': '192.168.0.254',
    'mtu': 1500,
    'auto': True,
    'up': True,
    'options': [['dns-search', 'toto.tld tutu.tld'],
               ['dns-nameservers', '127.0.0.1 192.168.0.254']]
}

Change state

Query

PUT /change_state_eth_ipv4

Example request

PUT /change_state_eth_ipv4 HTTP/1.1
Host: xivoserver
Content-Type: application/json
{
    'ifname' : 'eth0',
    'state': True
}

Delete interface ipv4

Query

GET /delete_eth_ipv4/<interface>

Example request

GET /delete_eth_ipv4/eth0 HTTP/1.1
Host: xivoserver
Content-Type: application/json