dhcpleased vs gif(4) (and othes like that)

2021-08-01 Thread Gregory Edigarov
Hello Everybody,

The very minimal change to make it work correctly:

--- /usr/src/etc/rc Fri Jul 30 13:31:07 2021
+++ /etc/rc Sun Aug  1 12:33:38 2021
@@ -449,6 +449,7 @@
 # Prevents carp from preempting until the system is booted.
 ifconfig -g carp carpdemote 128
 
+# We need to run /etc/netstart two times, first is to set autoconf
flags and static addresses
 sh /etc/netstart
 
 mount -s /usr >/dev/null 2>&1
@@ -456,6 +457,9 @@
 
 start_daemon dhcpleased unwind resolvd >/dev/null 2>&1
 
+sleep 5
+# On second run, it will reconfigure interfaces, setting proper
addresses on interfaces which depend on phys ones, like gif(4), or gre(4)
+sh /etc/netstart
 random_seed

Thank you!

--
With best regards,
    Gregory Edigarov



Re: dhcpleased vs gif(4) (and othes like that)

2021-08-01 Thread Theo de Raadt
Stuart Henderson  wrote:

> On 2021/08/01 12:57, Gregory Edigarov wrote:
> > Hello Everybody,
> > 
> > The very minimal change to make it work correctly:
> 
> Running configuration twice on all interfaces is not 'very minimal' and
> could easily cause more problems than it solves.

No kidding.



> Most use of gif(4) doesn't need this. Is this so you can use hostnames
> in the files, or something else?


Right.  The proposal lacks a clear problem statement.




Re: dhcpleased vs gif(4) (and othes like that)

2021-08-01 Thread Stuart Henderson
On 2021/08/01 12:57, Gregory Edigarov wrote:
> Hello Everybody,
> 
> The very minimal change to make it work correctly:

Running configuration twice on all interfaces is not 'very minimal' and
could easily cause more problems than it solves.

> +# We need to run /etc/netstart two times, first is to set autoconf
> flags and static addresses
>  sh /etc/netstart
>  
>  mount -s /usr >/dev/null 2>&1
> @@ -456,6 +457,9 @@
>  
>  start_daemon dhcpleased unwind resolvd >/dev/null 2>&1
>  
> +sleep 5

We have a "wait for routes to show up" mechanism rather than a fixed
sleep for a reason.

> +# On second run, it will reconfigure interfaces, setting proper
> addresses on interfaces which depend on phys ones, like gif(4), or gre(4)
> +sh /etc/netstart

I would currently suggest either 1) use dhclient instead ("!dhclient
$_if" in the hostname file will do) or 2) configure that from rc.local
instead.

Most use of gif(4) doesn't need this. Is this so you can use hostnames
in the files, or something else?