rougail/doc/service/ip.md

91 lines
1.7 KiB
Markdown

# La gestion d'une IP
## La balise IP
La gestion des IP se fait dans un conteneur de [service](README.md).
La déclaration de l'attribut permet d'associer une IP autorisé à accéder au service.
Il est nécessaire, au minimum, de spécifier le nom d'une variable de type "IP" :
```xml
<ip ip_type="variable">variable_ip</ip>
```
En YAML :
```yml
ip:
- ip_type: variable_ip
text: variable_ip
```
## La gestion d'un réseau
L'adresse peut être de type réseau ("network") :
```xml
<ip netmask="variable_netmask">variable_ip</ip>
```
En YAML :
```yml
ip:
- netmask: variable_netmask
text: variable_ip
```
Attention, dans ce cas il faut préciser une variable de type "netmask" dans l'attribut netmask.
## Désactiver la génération d'une IP
Il est possible de définir une [condition](../condition/README.md) de type "disabled_if_in" ou "disabled_if_not_in" sur une balise IP :
```xml
<services>
<service name="test">
<ip iplist="test_ip">variable_ip</ip>
</service>
</services>
<variables>
<variable name="condition" type="boolean"/>
<variable name="variable_ip" type="ip"/>
</variables>
<constraints>
<condition name="disabled_if_in" source="condition">
<param>False</param>
<target type="iplist">test_ip</target>
</condition>
</constraints>
```
En YAML :
```yml
services:
- service:
- name: test
ip:
- iplist: test_ip
text: variable_ip
variables:
- variable:
name: condition
type: boolean
- variable:
name: variable_ip
type: ip
constraints:
- condition:
- name: disabled_if_in
source: condition
param:
- text: false
target:
- type: iplist
text: test_ip
```
Dans ce cas, tous les IP avec un attribut iplist à "test_ip" seront désactivé si la variable "condition" est False.