Added more documentation.
This commit is contained in:
@@ -82,3 +82,4 @@ IPv6, and VLAN ID. Each can be visually compared to the others.)
|
|||||||
- [`add_v4_net`](add_v4_net.md)
|
- [`add_v4_net`](add_v4_net.md)
|
||||||
- [`add_v6_net`](add_v6_net.md)
|
- [`add_v6_net`](add_v6_net.md)
|
||||||
- [`add_vlan`](add_vlan.md)
|
- [`add_vlan`](add_vlan.md)
|
||||||
|
- [`add_rtadv`](add_rtadv.md)
|
||||||
|
|||||||
@@ -0,0 +1,38 @@
|
|||||||
|
# `add_rtadv` Command
|
||||||
|
|
||||||
|
## Name
|
||||||
|
|
||||||
|
`add_rtadv`
|
||||||
|
|
||||||
|
## Synopsis
|
||||||
|
|
||||||
|
```
|
||||||
|
add_rtadv ${card} ${vlan}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
Adds the network defined by the specified `${card}` and `${vlan}` to the list of
|
||||||
|
interfaces to be advertised by `rtadvd`.
|
||||||
|
|
||||||
|
The internal implementation prevents adding duplicate interfaces to the
|
||||||
|
advertisement list, by checking for their presence before adding.
|
||||||
|
It can safely be used alongside manual changes to `rc.conf` changes to
|
||||||
|
the `rtadvd_interfaces` variable.
|
||||||
|
|
||||||
|
Additionally, the `${rc_router_dir}/rc.d/generate_rtadvd_conf` service script
|
||||||
|
will generate `${rc_router_gen_dir}/rtadvd.conf` with `${interface}:tc=settings`
|
||||||
|
lines therein which can be used by the `rtadvd` that comes with FreeBSD.
|
||||||
|
Various `rc.router` [variables](variables.md) can be used to control the global
|
||||||
|
settings for all advertised IPv6 networks.
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
```
|
||||||
|
add_rtadv xy0 123 # Adds `xy0.123` to `rtadvd_interfaces`
|
||||||
|
add_rtadv abc3 765 # Adds `abc3.765` to `rtadvd_interfaces`
|
||||||
|
```
|
||||||
|
|
||||||
|
## See Also
|
||||||
|
- [`add_net`](add_net.md)
|
||||||
|
- [`add_rtadv`](add_rtadv.md)
|
||||||
@@ -29,6 +29,7 @@ add_vlan abc3 765 # Creates abc3.765
|
|||||||
|
|
||||||
## See Also
|
## See Also
|
||||||
- [`add_net`](add_net.md)
|
- [`add_net`](add_net.md)
|
||||||
|
- [`add_rtadv`](add_rtadv.md)
|
||||||
- [`add_v4_net`](add_v4_net.md)
|
- [`add_v4_net`](add_v4_net.md)
|
||||||
- [`add_v6_net`](add_v6_net.md)
|
- [`add_v6_net`](add_v6_net.md)
|
||||||
- [`clone_interface`](clone_interface.md)
|
- [`clone_interface`](clone_interface.md)
|
||||||
|
|||||||
@@ -0,0 +1,265 @@
|
|||||||
|
# `rc.router` Configuration Variables
|
||||||
|
|
||||||
|
## `rc_router_ula_prefix_size`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Used to control the size of IPv6 ULA prefixes. Can be either `48` or `56`
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rc_router_ula_prefix_size="48" # Generate `/48` IPv6 ULAs
|
||||||
|
rc_router_ula_prefix_size="56" # Generate `/56` IPv6 ULAs
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rc_router_network_name`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
A user-defined free-form string to provide sufficient "uniqueness" to generate ULA
|
||||||
|
prefixes with sufficiently low probability of collision. The user defined string
|
||||||
|
permits a user to remember the uniqueness "seed" without having to remember 40
|
||||||
|
or more random bits worth of hexidecimal digits.
|
||||||
|
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rc_router_network_name="This is my really awesome network!"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Note
|
||||||
|
|
||||||
|
The `${secret_ip6_net}` undocumented variable can be used in `rc.d` scripts to
|
||||||
|
expand to the user generated ULA prefix. The name of this undocumented variable
|
||||||
|
might change in the future.
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `v6_prefix_len`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
This variable should only be set in ISP hints files. It informs `rc.router` what
|
||||||
|
IPv6 prefix size to request from that ISP. Users may provide their own hints
|
||||||
|
files in `${rc_router_conf_dir}/hints` -- hints files which are in the user
|
||||||
|
configuration directory will override the pre-packaged hints.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
v6_prefix_len="63" # This ISP is pretty awful!
|
||||||
|
v6_prefix_len="48" # This ISP is very generous.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `v4_net`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
This variable defines a `/16` of IPv4 space inside which internal IPv4 networks
|
||||||
|
are constructed. In addition, `v4_net_${iface}` may be used to specify a `/16`
|
||||||
|
prefix for all VLANs on a specific internal interface.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
v4_net="192.168" # This is pretty typical
|
||||||
|
|
||||||
|
# Use a `/16` to differentiate the VLANs created on different physical interfaces.
|
||||||
|
v4_net_xy1="172.21"
|
||||||
|
v4_net_xy2="172.22"
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rc_router_gen_dir`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
This variable defines a director into which the configuration files for services
|
||||||
|
will be generated. By default it is `${rc_router_conf_dir}/gen`.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rc_router_gen_dir="/tmp/rc-router-gen/"
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `dhcpv4_pool_lo`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
This variable defines the lower bound of DHCPv4 pools for auto-generated `/24`
|
||||||
|
networks constructed by [`add_v4_net`](add_v4_net.md) or [`add_net`](add_net.md).
|
||||||
|
These pools can also be specified per-physical-interface (but not vlan) by using
|
||||||
|
`dhcpdv4_pool_lo_${iface}`.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
dhcpv4_pool_lo="10" # For most networks, start the dynamic pool at 10.
|
||||||
|
dhcpv4_pool_lo_xy0="200" # For networks on `xy0`, start the dynamic pool at 200.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `dhcpv4_pool_hi`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
This variable defines the upper bound of DHCPv4 pools for auto-generated `/24`
|
||||||
|
networks constructed by [`add_v4_net`](add_v4_net.md) or [`add_net`](add_net.md).
|
||||||
|
These pools can also be specified per-physical-interface (but not vlan) by using
|
||||||
|
`dhcpdv4_pool_hi_${iface}`.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
dhcpv4_pool_hi="20" # For most networks, end the dynamic pool at 20.
|
||||||
|
dhcpv4_pool_hi_xy0="240" # For networks on `xy0`, start the dynamic pool at 240.
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_pltimedecr`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Controls whether the `pltimedecr` flag is set on generated router advertisement
|
||||||
|
configuration files for IPv6. Defaults to `NO`.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_pltimedecr="YES" # Enable `pltimedecr` in generated `rtadvd.conf` files.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_vltimedecr`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Controls whether the `vltimedecr` flag is set on generated router advertisement
|
||||||
|
configuration files for IPv6. Defaults to `NO`.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_vltimedecr="YES" # Enable `vltimedecr` in generated `rtadvd.conf` files.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_dns_search_list`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify a list of search domain suffices to be delivered to
|
||||||
|
all IPv6 clients.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
# Add the specified domains to the DNS search lists for `rtadvd`.
|
||||||
|
rtadvd_dns_search_list="example.com local.example.com"
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_pref64_prefix`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify a NAT64 prefix for all networks advertised by
|
||||||
|
`rtadvd`. Note -- do not put the `/96` netmask suffix. This is useful
|
||||||
|
for building IPv6-only and IPv6-mostly networks that have to be compatible
|
||||||
|
with legacy IPv4 destinations.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
# Add the specified domains to the DNS search lists for `rtadvd`.
|
||||||
|
rtadvd_pref64_prefix="64:ff9b::"
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_mininterval`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify the minimum router advertisement interval.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_mininterval="300" # Advertise no more frequently than every 5 minutes.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_maxinterval`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify the maximum router advertisement interval.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_maxinterval="1800" # Advertise less more frequently than every half hour.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_pltime`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify the preferred lifetime for prefixes advertised by this
|
||||||
|
router.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_pltime="300" # Advertise a preferred prefix lifetime of 5 minutes.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_vltime`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify the valid lifetime for prefixes advertised by this
|
||||||
|
router.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_vltime="900" # Advertise a valid prefix lifetime of 15 minutes.
|
||||||
|
```
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
## `rtadvd_rltime`
|
||||||
|
|
||||||
|
### Description
|
||||||
|
|
||||||
|
Allows the user to specify the valid lifetime for the routing destination
|
||||||
|
advertised by this router.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```
|
||||||
|
rtadvd_rltime="900" # Advertise a router advertisement lifetime of 15 minutes.
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user