GET /api/hosts/:host_id/interfaces
Listar todas las interfaces por host

GET /api/domains/:domain_id/interfaces
Listar todas las interfaces por dominio

GET /api/subnets/:subnet_id/interfaces
Listar todas las interfaces por subred

Ejemplos

GET /api/hosts/host727/interfaces
404
{
  "error": {
    "message": "Resource interface not found by id ''"
  }
}

Parámetros

Nombre del parámetro Descripción
location_id
opcional

Alcance por ubicación

Validations:

  • Must be a Integer

organization_id
opcional

Alcance por organización

Validations:

  • Must be a Integer

host_id
requerido

ID o nombre del host

Validations:

  • Must be a String

domain_id
opcional

ID del nombre de dominio

Validations:

  • Must be a String

subnet_id
opcional

ID o nombre de subred

Validations:

  • Must be a String

page
opcional

Número de página, comenzando por 1

Validations:

  • Must be a number.

per_page
opcional

Número de resultados por página para devolver

Validations:

  • Must be a number.


GET /api/hosts/:host_id/interfaces/:id
Mostrar una interfaz para host

Ejemplos

GET /api/hosts/host2647/interfaces/19
200
{
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "domain_id": null,
  "domain_name": null,
  "created_at": "2019-09-11 14:58:36 UTC",
  "updated_at": "2019-09-11 14:58:36 UTC",
  "managed": true,
  "identifier": "eth852",
  "id": 19,
  "name": null,
  "ip": "0.0.0.203",
  "ip6": null,
  "mac": "00:33:45:ab:01:46",
  "mtu": null,
  "fqdn": null,
  "primary": false,
  "provision": false,
  "type": "interface",
  "virtual": false
}

Parámetros

Nombre del parámetro Descripción
location_id
opcional

Alcance por ubicación

Validations:

  • Must be a Integer

organization_id
opcional

Alcance por organización

Validations:

  • Must be a Integer

host_id
requerido

ID o nombre del host

Validations:

  • Must be a String

id
requerido

ID o nombre de la interfaz

Validations:

  • Must be a String


POST /api/hosts/:host_id/interfaces
Crear una interfaz en un host

Ejemplos

POST /api/hosts/host2642/interfaces
{
  "interface": {
    "name": "test.foreman.com",
    "ip": "10.0.1.1",
    "mac": "AA:AA:AA:AA:AA:AA",
    "username": "foo",
    "password": "bar",
    "provider": "IPMI",
    "type": "bmc",
    "ip6": "2001:db8::1"
  }
}
201
{
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "domain_id": null,
  "domain_name": null,
  "created_at": "2019-09-11 14:58:36 UTC",
  "updated_at": "2019-09-11 14:58:36 UTC",
  "managed": true,
  "identifier": null,
  "id": 5,
  "name": "test.foreman.com",
  "ip": "10.0.1.1",
  "ip6": "2001:db8::1",
  "mac": "aa:aa:aa:aa:aa:aa",
  "mtu": null,
  "fqdn": "test.foreman.com",
  "primary": false,
  "provision": false,
  "type": "bmc",
  "username": "foo",
  "password": "bar",
  "provider": "IPMI",
  "virtual": false
}

Parámetros

Nombre del parámetro Descripción
location_id
opcional

Alcance por ubicación

Validations:

  • Must be a Integer

organization_id
opcional

Alcance por organización

Validations:

  • Must be a Integer

host_id
requerido

ID o nombre del host

Validations:

  • Must be a String

interface
requerido

información de interfaz

Validations:

  • Must be a Hash

interface[mac]
opcional , nil permitido

Dirección MAC de la interfaz. Requerida para interfaces administradas bare metal.

Validations:

  • Must be a String

interface[ip]
opcional , nil permitido

Dirección IPv4 de la interfaz

Validations:

  • Must be a String

interface[ip6]
opcional , nil permitido

Dirección IPv6 de la interfaz

Validations:

  • Must be a String

interface[type]
opcional , nil permitido

Tipo de interfaz, por ejemplo, bmc. El tipo predeterminado es interface

Validations:

  • Must be one of: interface, bmc, bond, bridge.

interface[name]
opcional , nil permitido

Nombre de DNS de la interfaz

Validations:

  • Must be a String

interface[subnet_id]
opcional , nil permitido

ID de subred Foreman de la interfaz IPv4

Validations:

  • Must be a number.

interface[subnet6_id]
opcional , nil permitido

ID de subred Foreman de la interfaz IPv6

Validations:

  • Must be a number.

interface[domain_id]
opcional , nil permitido

ID del dominio de Foreman de la interfaz. Requerida para interfaces principales en hosts administrados.

Validations:

  • Must be a number.

interface[identifier]
opcional , nil permitido

Identificador de dispositivo, p.ej. eth0 o eth1.1

Validations:

  • Must be a String

interface[managed]
opcional , nil permitido

¿Debería esta interfaz ser administrada vía proxy inteligente DHCP y DNS y configurarse durante el aprovisionamiento?

Validations:

  • Must be one of: true, false, 1, 0.

interface[primary]
opcional , nil permitido

¿Debería ser usada esta interface para construir el FQDN del host? Cada host gestionado necesita tener una interfaz primaria.

Validations:

  • Must be one of: true, false, 1, 0.

interface[provision]
opcional , nil permitido

¿Debería ser usada esta interfaz para TFTP o PXELinux (o SSH para hosts basados en imágenes)? Cada host gestionado necesita tener una interfaz de provisión.

Validations:

  • Must be one of: true, false, 1, 0.

interface[username]
opcional , nil permitido

Solamente para interfaces BMC.

Validations:

  • Must be a String

interface[password]
opcional , nil permitido

Solamente para interfaces BMC.

Validations:

  • Must be a String

interface[provider]
opcional , nil permitido

Proveedor de interfaz, p.ej., IPMI. Solo para interfaces BMC.

Validations:

  • Must be one of: IPMI, SSH.

interface[virtual]
opcional , nil permitido

Dispositivo VLAN o alias

Validations:

  • Must be one of: true, false, 1, 0.

interface[tag]
opcional , nil permitido

Etiqueta VLAN, este atributo tiene precedencia sobre la ID de subred VLAN. Solo para interfaces virtuales.

Validations:

  • Must be a String

interface[mtu]
opcional , nil permitido

MTU, este atributo tiene precedencia sobre la MTU de subred.

Validations:

  • Must be a Integer

interface[attached_to]
opcional , nil permitido

Identificador de la interfaz a la que pertenece esta interfaz, p.ej., eth1. Solo para interfaces virtuales.

Validations:

  • Must be a String

interface[mode]
opcional , nil permitido

Modo de vinculación de la interfaz, p. ej,. balance-rr. Solo para interfaces de vínculo.

Validations:

  • Must be one of: balance-rr, active-backup, balance-xor, broadcast, 802.3ad, balance-tlb, balance-alb.

interface[attached_devices]
opcional , nil permitido

Identificadores de interfaces adjuntas, por ejemplo: ['eth1', 'eth2']. Para las interfaces vinculadas son esclavos. Solo para interfaces vinculadas y puentes.

Validations:

  • Must be an array of any type

interface[bond_options]
opcional , nil permitido

Opciones separadas por espacios, p.ej miimon=100. Solo para interfaces de vínculo.

Validations:

  • Must be a String

interface[compute_attributes]
opcional , nil permitido

Atributos adicionales específicos del recurso de computación para la interfaz.

Validations:

  • Must be a Hash


PUT /api/hosts/:host_id/interfaces/:id
Actualizar una interfaz de host

Ejemplos

PUT /api/hosts/host2643/interfaces/7
{
  "interface": {
    "name": "wuhebbfueg"
  }
}
200
{
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "domain_id": null,
  "domain_name": null,
  "created_at": "2019-09-11 14:58:36 UTC",
  "updated_at": "2019-09-11 14:58:36 UTC",
  "managed": true,
  "identifier": "eth844",
  "id": 7,
  "name": "wuhebbfueg",
  "ip": "0.0.0.195",
  "ip6": null,
  "mac": "00:33:45:ab:01:3e",
  "mtu": null,
  "fqdn": "wuhebbfueg",
  "primary": false,
  "provision": false,
  "type": "interface",
  "virtual": false
}

Parámetros

Nombre del parámetro Descripción
location_id
opcional

Alcance por ubicación

Validations:

  • Must be a Integer

organization_id
opcional

Alcance por organización

Validations:

  • Must be a Integer

host_id
requerido

ID o nombre del host

Validations:

  • Must be a String

id
requerido

ID de la interfaz

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

interface
requerido

información de interfaz

Validations:

  • Must be a Hash

interface[mac]
opcional , nil permitido

Dirección MAC de la interfaz. Requerida para interfaces administradas bare metal.

Validations:

  • Must be a String

interface[ip]
opcional , nil permitido

Dirección IPv4 de la interfaz

Validations:

  • Must be a String

interface[ip6]
opcional , nil permitido

Dirección IPv6 de la interfaz

Validations:

  • Must be a String

interface[type]
opcional , nil permitido

Tipo de interfaz, por ejemplo, bmc. El tipo predeterminado es interface

Validations:

  • Must be one of: interface, bmc, bond, bridge.

interface[name]
opcional , nil permitido

Nombre de DNS de la interfaz

Validations:

  • Must be a String

interface[subnet_id]
opcional , nil permitido

ID de subred Foreman de la interfaz IPv4

Validations:

  • Must be a number.

interface[subnet6_id]
opcional , nil permitido

ID de subred Foreman de la interfaz IPv6

Validations:

  • Must be a number.

interface[domain_id]
opcional , nil permitido

ID del dominio de Foreman de la interfaz. Requerida para interfaces principales en hosts administrados.

Validations:

  • Must be a number.

interface[identifier]
opcional , nil permitido

Identificador de dispositivo, p.ej. eth0 o eth1.1

Validations:

  • Must be a String

interface[managed]
opcional , nil permitido

¿Debería esta interfaz ser administrada vía proxy inteligente DHCP y DNS y configurarse durante el aprovisionamiento?

Validations:

  • Must be one of: true, false, 1, 0.

interface[primary]
opcional , nil permitido

¿Debería ser usada esta interface para construir el FQDN del host? Cada host gestionado necesita tener una interfaz primaria.

Validations:

  • Must be one of: true, false, 1, 0.

interface[provision]
opcional , nil permitido

¿Debería ser usada esta interfaz para TFTP o PXELinux (o SSH para hosts basados en imágenes)? Cada host gestionado necesita tener una interfaz de provisión.

Validations:

  • Must be one of: true, false, 1, 0.

interface[username]
opcional , nil permitido

Solamente para interfaces BMC.

Validations:

  • Must be a String

interface[password]
opcional , nil permitido

Solamente para interfaces BMC.

Validations:

  • Must be a String

interface[provider]
opcional , nil permitido

Proveedor de interfaz, p.ej., IPMI. Solo para interfaces BMC.

Validations:

  • Must be one of: IPMI, SSH.

interface[virtual]
opcional , nil permitido

Dispositivo VLAN o alias

Validations:

  • Must be one of: true, false, 1, 0.

interface[tag]
opcional , nil permitido

Etiqueta VLAN, este atributo tiene precedencia sobre la ID de subred VLAN. Solo para interfaces virtuales.

Validations:

  • Must be a String

interface[mtu]
opcional , nil permitido

MTU, este atributo tiene precedencia sobre la MTU de subred.

Validations:

  • Must be a Integer

interface[attached_to]
opcional , nil permitido

Identificador de la interfaz a la que pertenece esta interfaz, p.ej., eth1. Solo para interfaces virtuales.

Validations:

  • Must be a String

interface[mode]
opcional , nil permitido

Modo de vinculación de la interfaz, p. ej,. balance-rr. Solo para interfaces de vínculo.

Validations:

  • Must be one of: balance-rr, active-backup, balance-xor, broadcast, 802.3ad, balance-tlb, balance-alb.

interface[attached_devices]
opcional , nil permitido

Identificadores de interfaces adjuntas, por ejemplo: ['eth1', 'eth2']. Para las interfaces vinculadas son esclavos. Solo para interfaces vinculadas y puentes.

Validations:

  • Must be an array of any type

interface[bond_options]
opcional , nil permitido

Opciones separadas por espacios, p.ej miimon=100. Solo para interfaces de vínculo.

Validations:

  • Must be a String

interface[compute_attributes]
opcional , nil permitido

Atributos adicionales específicos del recurso de computación para la interfaz.

Validations:

  • Must be a Hash


DELETE /api/hosts/:host_id/interfaces/:id
Borrar una interfaz de host

Ejemplos

DELETE /api/hosts/host2645/interfaces/13
{
  "interface": {}
}
200
{
  "id": 13,
  "mac": "00:33:45:ab:01:42",
  "ip": "0.0.0.199",
  "name": null,
  "host_id": 5,
  "subnet_id": null,
  "domain_id": null,
  "attrs": {},
  "created_at": "2019-09-11T14:58:36.301Z",
  "updated_at": "2019-09-11T14:58:36.301Z",
  "provider": null,
  "username": null,
  "password": null,
  "virtual": false,
  "link": true,
  "identifier": "eth848",
  "tag": "",
  "attached_to": "",
  "managed": true,
  "mode": "balance-rr",
  "attached_devices": "",
  "bond_options": "",
  "primary": false,
  "provision": false,
  "compute_attributes": {},
  "ip6": null,
  "subnet6_id": null
}

Parámetros

Nombre del parámetro Descripción
location_id
opcional

Alcance por ubicación

Validations:

  • Must be a Integer

organization_id
opcional

Alcance por organización

Validations:

  • Must be a Integer

host_id
requerido

ID o nombre del host

Validations:

  • Must be a String

id
requerido

ID de la interfaz

Validations:

  • Must be a String