diff --git a/network/manifests/init.pp b/network/manifests/init.pp index 72b7da5..332b0bc 100644 --- a/network/manifests/init.pp +++ b/network/manifests/init.pp @@ -178,10 +178,12 @@ define network::interface($options = [], $ipaddr = "none", $eaddr = "none", $net # Destination network or default for default route. # $gateway: # Gateway address. +# $ipv6gateway: +# IPv6 gateway address. # $device: # Interface to use for this route. # -define network::route($gateway, $device) { +define network::route($gateway, $device, $ipv6gateway = "") { case $name { "default": { @@ -194,12 +196,19 @@ define network::route($gateway, $device) { "set GATEWAYDEV ${device}", ], notify => Exec["restart-network"], } + if "${ipv6gateway}" != "" { + augeas { "set-default-ipv6-route": + context => "/files/etc/sysconfig/network", + changes => "set IPV6_DEFAULTGW ${ipv6gateway}", + notify => Exec["restart-network"], + } + } } openbsd: { include network::helper::restart file { "/etc/mygate": ensure => present, - content => "${gateway}\n", + content => template("network/mygate.erb"), mode => 644, owner => root, group => wheel, diff --git a/network/templates/mygate.erb b/network/templates/mygate.erb new file mode 100644 index 0000000..d0a9f05 --- /dev/null +++ b/network/templates/mygate.erb @@ -0,0 +1,6 @@ +<% if gateway != "" -%> +<%= gateway %> +<% end -%> +<% if ipv6gateway != "" -%> +<%= ipv6gateway %> +<% end -%>