Eric C. Landgraf([email protected]) on 2020.01.15 12:11:30 -0500:
> >Synopsis: relayd will not launch when listener host is a CNAME
> >Category: user
> >Environment:
> System : OpenBSD 6.6
> Details : OpenBSD 6.6 (GENERIC.MP) #3: Thu Nov 21 03:20:01 MST
> 2019
>
> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>
> Architecture: OpenBSD.amd64
> Machine : amd64
> >Description:
> DNS of host listener:
>
> www.seaturtle.pw. 338 IN CNAME seaturtle.pw.
> seaturtle.pw. 338 IN A 73.12.116.18
>
> Error thrown by `relayd -n`
>
> host_dns: www.seaturtle.pw resolves to more than 1 hosts
> /etc/relayd.conf:29: relay www.seaturtle.pw:http or listener
> defined twice
>
> Relayd does not launch. This is a regression from 6.4 to 6.6 (I
> have not checked 6.5). This happens with all listen addresses I
> have which are aliases to a different name, but not with the
> apex of this domain (which is obviously not a CNAME).
>
> >How-To-Repeat:
> Have DNS as in description, with this as the relayd config:
>
> relay "www.seaturtle.pw" {
> listen on "www.seaturtle.pw" port 80
> forward to $pewserv4 port 80
> }
>
> relayd fails to launch.
> >Fix:
> Workaround: don't use CNAME records. It should be fairly obvious
> why this is undesirable.
>
Why do you need to use the CNAME in the listen statement and cant use the
seaturtle.pw name? Or an IP address?
This may be a result of this commit:
Author: denis <denis>
Date: Mon Oct 22 07:08:02 2018 +0000
Make host_*() AF-agnostic
Merge host_v{4,6}() into much simpler host_ip() using just getaddrinfo().
With input & test by kn@ and benno@
OK benno@ kn@