426 lines
4.9 KiB
Markdown
426 lines
4.9 KiB
Markdown
# Documentation des modules
|
||
|
||
Documentations des modules qu'on utilise pour config un switch, on retire ce qui
|
||
n'est pas dans les config qu'on écrit, des modules supplémentaires sont présent en backend.
|
||
|
||
Détail complet dans [auto-doc.md](./auto-doc.md).
|
||
|
||
## dgn-interfaces
|
||
|
||
|
||
|
||
Unified configuration of interfaces adapted to DGNum usage:
|
||
|
||
- each interfaces have only one logical subinterface;
|
||
- enabling ethernet-switching also enable RSTP;
|
||
- automatic enabling interface and relevant config family when configuring;
|
||
- allows enabling PoE along other configurations\.
|
||
|
||
|
||
|
||
*Type:*
|
||
attribute set of (submodule)
|
||
|
||
|
||
|
||
*Default:*
|
||
` { } `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.enable
|
||
|
||
|
||
|
||
Whether to enable this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
boolean
|
||
|
||
|
||
|
||
*Default:*
|
||
` "config.inet.enable || config.inet6.enable || config.ethernet-switching.enable" `
|
||
|
||
|
||
|
||
*Example:*
|
||
` true `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.ethernet-switching\.enable
|
||
|
||
|
||
|
||
Whether to enable the ethernet switching on this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
boolean
|
||
|
||
|
||
|
||
*Default:*
|
||
` "config.ethernet-switching.interface-mode != null" `
|
||
|
||
|
||
|
||
*Example:*
|
||
` true `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.ethernet-switching\.interface-mode
|
||
|
||
|
||
|
||
Mode of operation for vlan addressing of this interface\.
|
||
“trunk” means that the traffic is tagged, “access” means the
|
||
traffic is tagged by the switch\.
|
||
Use null to desactivate the switching\.
|
||
|
||
|
||
|
||
*Type:*
|
||
null or one of “trunk”, “access”
|
||
|
||
|
||
|
||
*Default:*
|
||
` null `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.ethernet-switching\.vlans
|
||
|
||
|
||
|
||
Vlans that can be used on this interface\.
|
||
Only one ID should be here for “access” mode of operation\.
|
||
|
||
|
||
|
||
*Type:*
|
||
list of (string or (unsigned integer, meaning >=0))
|
||
|
||
|
||
|
||
*Default:*
|
||
` [ ] `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.inet\.enable
|
||
|
||
|
||
|
||
Whether to enable the ipv4 on this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
boolean
|
||
|
||
|
||
|
||
*Default:*
|
||
` "config.inet.addresses != [ ]" `
|
||
|
||
|
||
|
||
*Example:*
|
||
` true `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.inet\.addresses
|
||
|
||
|
||
|
||
ipv4 addresses of this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
list of string
|
||
|
||
|
||
|
||
*Default:*
|
||
` [ ] `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.inet6\.enable
|
||
|
||
|
||
|
||
Whether to enable the ipv6 on this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
boolean
|
||
|
||
|
||
|
||
*Default:*
|
||
` "config.inet6.addresses != [ ]" `
|
||
|
||
|
||
|
||
*Example:*
|
||
` true `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.inet6\.addresses
|
||
|
||
|
||
|
||
ipv6 addresses of this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
list of string
|
||
|
||
|
||
|
||
*Default:*
|
||
` [ ] `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## dgn-interfaces\.\<name>\.poe
|
||
|
||
|
||
|
||
Whether to enable the PoE on this interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
boolean
|
||
|
||
|
||
|
||
*Default:*
|
||
` false `
|
||
|
||
|
||
|
||
*Example:*
|
||
` true `
|
||
|
||
*Declared by:*
|
||
- [dgn-module\.nix](./dgn-module.nix)
|
||
|
||
|
||
|
||
## netconf\.mandatoryInterfaces
|
||
|
||
|
||
|
||
JunOS require some interfaces to always be configured (even if they are disabled),
|
||
which correspond to physical interfaces of the switch\. They have to be declared here
|
||
with some information about it (only if it supports PoE for now)\.
|
||
|
||
|
||
|
||
*Type:*
|
||
attribute set of (submodule)
|
||
|
||
|
||
|
||
*Example:*
|
||
|
||
```
|
||
{
|
||
"ge-0/0/0" = {
|
||
supportPoE = true;
|
||
};
|
||
"ge-0/0/1" = {
|
||
supportPoE = true;
|
||
};
|
||
"xe-0/0/0" = {
|
||
supportPoE = false;
|
||
};
|
||
}
|
||
```
|
||
|
||
*Declared by:*
|
||
- [junos](./junos)
|
||
|
||
|
||
|
||
## netconf\.mandatoryInterfaces\.\<name>\.supportPoE
|
||
|
||
|
||
|
||
Wether this interface supports PoE\.
|
||
|
||
|
||
|
||
*Type:*
|
||
boolean
|
||
|
||
|
||
|
||
*Example:*
|
||
` true `
|
||
|
||
*Declared by:*
|
||
- [junos](./junos)
|
||
|
||
|
||
|
||
## netconf\.xmls\.configuration
|
||
|
||
|
||
|
||
The full configuration to send to a JunOS\.
|
||
|
||
|
||
|
||
*Type:*
|
||
string *(read only)*
|
||
|
||
*Declared by:*
|
||
- [junos](./junos)
|
||
|
||
|
||
|
||
## vlans
|
||
|
||
|
||
|
||
Named vlans configuration\. Allows to name vlans inside interface configuration,
|
||
instead of just using their IDs\.
|
||
|
||
|
||
|
||
*Type:*
|
||
attribute set of (submodule)
|
||
|
||
*Declared by:*
|
||
- [junos/vlans\.nix](./junos/vlans.nix)
|
||
|
||
|
||
|
||
## vlans\.\<name>\.id
|
||
|
||
|
||
|
||
The ID of this vlan, ` null ` means no ID\.
|
||
Incompatible with vlans\.‹name›\.id-list\.
|
||
|
||
|
||
|
||
*Type:*
|
||
null or (unsigned integer, meaning >=0)
|
||
|
||
|
||
|
||
*Default:*
|
||
` null `
|
||
|
||
*Declared by:*
|
||
- [junos/vlans\.nix](./junos/vlans.nix)
|
||
|
||
|
||
|
||
## vlans\.\<name>\.id-list
|
||
|
||
|
||
|
||
List of IDs or IDs range to classify as this vlan\.
|
||
Incompatible with vlans\.‹name›\.id\.
|
||
|
||
|
||
|
||
*Type:*
|
||
list of (unsigned integer, meaning >=0, or (submodule))
|
||
|
||
|
||
|
||
*Default:*
|
||
` [ ] `
|
||
|
||
|
||
|
||
*Example:*
|
||
|
||
```
|
||
[
|
||
42
|
||
{
|
||
begin = 100;
|
||
end = 200;
|
||
}
|
||
]
|
||
```
|
||
|
||
*Declared by:*
|
||
- [junos/vlans\.nix](./junos/vlans.nix)
|
||
|
||
|
||
|
||
## vlans\.\<name>\.l3-interface
|
||
|
||
|
||
|
||
Switch’s logical interface to connect directly to this vlan\.
|
||
This allows to communicate with the switch from a vlan without
|
||
having a cable looping back on it’s management interface\.
|
||
|
||
|
||
|
||
*Type:*
|
||
null or string
|
||
|
||
|
||
|
||
*Default:*
|
||
` null `
|
||
|
||
|
||
|
||
*Example:*
|
||
` "irb.0" `
|
||
|
||
*Declared by:*
|
||
- [junos/vlans\.nix](./junos/vlans.nix)
|
||
|
||
|