The configuration of interface specific parameters for ospf and rip are now located inside the physical interface's sub-config inside `interfaces `
to ease creation of configuration scripts it's necessary to move configuration of any aspect of a services into it's own hierarchy in for this service `protocols (osof|rip)` sub-config
Configuration today:
````
interfaces {
ethernet eth0 {
ip {
ospf {
cost 200
dead-interval 40
hello-interval 10
network broadcast
priority 0
retransmit-interval 5
transmit-delay 1
}
}
}
}
```
The proposed new configuration is: (interface names and parameters are used as example)
```
protocols {
ospf {
interface eth0 {
address-family ipv4 {
/* Configuration moved from the interface */
cost 1000
dead-interval 40
hello-interval 10
network point-to-point
priority 1
retransmit-interval 5
transmit-delay 1
}
}
}
}
```
To ease configuration there are also questions about if configuration should be allowed on the main interface level, that overrides config inside the address-family that way you do not need to configure cost and intervals separately for ipv4 and ipv6
example:
```
protocols {
ospf {
interface eth0 {
cost 1000
dead-interval 40
hello-interval 10
network point-to-point
priority 1
retransmit-interval 5
transmit-delay 1
address-family ipv4 { }
address-family ipv6 {
dead-interval 200
hello-interval 50
}
}
}
}
```
This configuration will create all "global" parameters for both ipv4 and ipv, but for ipv6 `hello-interval` and `dead-interval` is overrided.
Also, if the `protocols ospf interface eth0` tag-node is created without child nodes values are filled by default values or left unconfigured inside frr
For now the process is not started, feel free to comment and if your'e want a mission, just assign yourself the case.