Hi Riccardo, dhrelay only operates on a single interface, so you're not missing anything there.
Can you show me the ps output for the dhcrelay processes you start? The rcctl commands you show below don't include the rcctl start dhcrelay and dhcrelay_second bits. I have the following in rc.local (mostly because this config predates rcctl): foo=192.0.2.194 bar=192.0.2.196 echo -n 'start dhcp relays:' for i in vlan371 vlan373 \ vlan835 \ vlan801 vlan847 vlan866 vlan867 \ vlan811 vlan815 vlan816 \ vlan1101 vlan1147 vlan1165 vlan1166 \ vlan1201 vlan1231 vlan1247 vlan1265 vlan1266 \ vlan1301 vlan1331 vlan1347 vlan1365 vlan1366 \ vlan971 vlan966 \ vlan1401 vlan1465 vlan1466 vlan1467 \ vlan1501 vlan1565 vlan1566 \ vlan1601 vlan1647 vlan1665 vlan1666 vlan1667 \ vlan1701 vlan1747 vlan1765 vlan1766 \ vlan1801 vlan1865 vlan1866 \ vlan1901 vlan1965 vlan1966 \ vlan2001 vlan2065 vlan2066 vlan2067 \ vlan2008 vlan2068 \ vlan2506 vlan2533 vlan2536 vlan2531 vlan2537 vlan2547; do /usr/sbin/dhcrelay -i ${i} $foo $bar echo -n " ${i}" done echo '.' Which produces: xdlg@shotgun1 pf$ ps -aux | grep dhc _dhcp 40965 0.0 0.0 532 1008 ?? Ssp 10Nov17 12:06.67 /usr/sbin/dhcrelay -i vlan371 192.0.2.194 192.0.2.196 _dhcp 16825 0.0 0.0 536 1012 ?? Ssp 10Nov17 2:08.80 /usr/sbin/dhcrelay -i vlan867 192.0.2.194 192.0.2.196 _dhcp 69672 0.0 0.0 532 1076 ?? Isp 10Nov17 0:46.06 /usr/sbin/dhcrelay -i vlan866 192.0.2.194 192.0.2.196 _dhcp 48117 0.0 0.0 536 972 ?? Isp 10Nov17 0:00.02 /usr/sbin/dhcrelay -i vlan373 192.0.2.194 192.0.2.196 _dhcp 43065 0.0 0.0 540 1068 ?? Isp 10Nov17 0:06.02 /usr/sbin/dhcrelay -i vlan835 192.0.2.194 192.0.2.196 _dhcp 77793 0.0 0.0 540 988 ?? Ssp 10Nov17 19:26.92 /usr/sbin/dhcrelay -i vlan801 192.0.2.194 192.0.2.196 _dhcp 68793 0.0 0.0 540 1028 ?? Isp 10Nov17 0:08.40 /usr/sbin/dhcrelay -i vlan847 192.0.2.194 192.0.2.196 _dhcp 12879 0.0 0.0 540 1016 ?? Isp 10Nov17 1:14.46 /usr/sbin/dhcrelay -i vlan1101 192.0.2.194 192.0.2.196 _dhcp 10430 0.0 0.0 544 1052 ?? Ssp 10Nov17 1:42.55 /usr/sbin/dhcrelay -i vlan811 192.0.2.194 192.0.2.196 _dhcp 87753 0.0 0.0 544 1016 ?? Isp 10Nov17 0:31.65 /usr/sbin/dhcrelay -i vlan815 192.0.2.194 192.0.2.196 _dhcp 21434 0.0 0.0 536 1024 ?? Isp 10Nov17 0:00.20 /usr/sbin/dhcrelay -i vlan816 192.0.2.194 192.0.2.196 _dhcp 17816 0.0 0.0 540 1020 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1147 192.0.2.194 192.0.2.196 _dhcp 67338 0.0 0.0 540 1020 ?? Isp 10Nov17 0:00.11 /usr/sbin/dhcrelay -i vlan1247 192.0.2.194 192.0.2.196 _dhcp 73549 0.0 0.0 540 1020 ?? Isp 10Nov17 0:00.55 /usr/sbin/dhcrelay -i vlan1165 192.0.2.194 192.0.2.196 _dhcp 78748 0.0 0.0 540 1012 ?? Isp 10Nov17 0:02.33 /usr/sbin/dhcrelay -i vlan1166 192.0.2.194 192.0.2.196 _dhcp 82689 0.0 0.0 540 1008 ?? Isp 10Nov17 2:02.18 /usr/sbin/dhcrelay -i vlan1201 192.0.2.194 192.0.2.196 _dhcp 31199 0.0 0.0 540 996 ?? Isp 10Nov17 0:07.63 /usr/sbin/dhcrelay -i vlan1231 192.0.2.194 192.0.2.196 _dhcp 21332 0.0 0.0 532 1004 ?? Isp 10Nov17 1:24.02 /usr/sbin/dhcrelay -i vlan1265 192.0.2.194 192.0.2.196 _dhcp 35688 0.0 0.0 544 1040 ?? Isp 10Nov17 0:00.28 /usr/sbin/dhcrelay -i vlan1347 192.0.2.194 192.0.2.196 _dhcp 36741 0.0 0.0 540 1032 ?? Isp 10Nov17 0:07.17 /usr/sbin/dhcrelay -i vlan1266 192.0.2.194 192.0.2.196 _dhcp 90274 0.0 0.0 544 1024 ?? Isp 10Nov17 19:17.78 /usr/sbin/dhcrelay -i vlan1301 192.0.2.194 192.0.2.196 _dhcp 42199 0.0 0.0 548 1052 ?? Isp 10Nov17 0:00.17 /usr/sbin/dhcrelay -i vlan1331 192.0.2.194 192.0.2.196 _dhcp 83979 0.0 0.0 528 1000 ?? Ssp 10Nov17 2:09.78 /usr/sbin/dhcrelay -i vlan1365 192.0.2.194 192.0.2.196 _dhcp 52142 0.0 0.0 536 792 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan965 192.0.2.194 192.0.2.196 _dhcp 17747 0.0 0.0 540 996 ?? Isp 10Nov17 0:05.03 /usr/sbin/dhcrelay -i vlan1366 192.0.2.194 192.0.2.196 _dhcp 85673 0.0 0.0 536 988 ?? Isp 10Nov17 0:11.59 /usr/sbin/dhcrelay -i vlan947 192.0.2.194 192.0.2.196 _dhcp 266 0.0 0.0 536 964 ?? Isp 10Nov17 0:01.84 /usr/sbin/dhcrelay -i vlan966 192.0.2.194 192.0.2.196 _dhcp 59857 0.0 0.0 540 984 ?? Isp 10Nov17 4:26.67 /usr/sbin/dhcrelay -i vlan1401 192.0.2.194 192.0.2.196 _dhcp 17159 0.0 0.0 536 1012 ?? Ssp 10Nov17 1:27.85 /usr/sbin/dhcrelay -i vlan971 192.0.2.194 192.0.2.196 _dhcp 67613 0.0 0.0 540 1028 ?? Isp 10Nov17 2:29.27 /usr/sbin/dhcrelay -i vlan1465 192.0.2.194 192.0.2.196 _dhcp 33040 0.0 0.0 536 840 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1565 192.0.2.194 192.0.2.196 _dhcp 4850 0.0 0.0 544 844 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1501 192.0.2.194 192.0.2.196 _dhcp 70912 0.0 0.0 544 992 ?? Isp 10Nov17 0:30.19 /usr/sbin/dhcrelay -i vlan1467 192.0.2.194 192.0.2.196 _dhcp 4089 0.0 0.0 548 1016 ?? Isp 10Nov17 0:05.25 /usr/sbin/dhcrelay -i vlan1466 192.0.2.194 192.0.2.196 _dhcp 99740 0.0 0.0 540 1016 ?? Isp 10Nov17 0:02.74 /usr/sbin/dhcrelay -i vlan1667 192.0.2.194 192.0.2.196 _dhcp 11575 0.0 0.0 532 844 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1566 192.0.2.194 192.0.2.196 _dhcp 27164 0.0 0.0 544 1024 ?? Ssp 10Nov17 23:05.83 /usr/sbin/dhcrelay -i vlan1601 192.0.2.194 192.0.2.196 _dhcp 68765 0.0 0.0 540 1012 ?? Isp 10Nov17 0:01.70 /usr/sbin/dhcrelay -i vlan1647 192.0.2.194 192.0.2.196 _dhcp 40234 0.0 0.0 536 988 ?? Isp 10Nov17 3:16.99 /usr/sbin/dhcrelay -i vlan1665 192.0.2.194 192.0.2.196 _dhcp 67224 0.0 0.0 536 1036 ?? Isp 10Nov17 1:52.88 /usr/sbin/dhcrelay -i vlan1666 192.0.2.194 192.0.2.196 _dhcp 93694 0.0 0.0 536 972 ?? Isp 10Nov17 0:05.81 /usr/sbin/dhcrelay -i vlan1766 192.0.2.194 192.0.2.196 _dhcp 83080 0.0 0.0 544 988 ?? Isp 10Nov17 4:45.33 /usr/sbin/dhcrelay -i vlan1701 192.0.2.194 192.0.2.196 _dhcp 38086 0.0 0.0 536 988 ?? Isp 10Nov17 0:00.13 /usr/sbin/dhcrelay -i vlan1747 192.0.2.194 192.0.2.196 _dhcp 39807 0.0 0.0 540 1024 ?? Isp 10Nov17 0:50.62 /usr/sbin/dhcrelay -i vlan1765 192.0.2.194 192.0.2.196 _dhcp 90389 0.0 0.0 548 1036 ?? Ssp 10Nov17 6:31.51 /usr/sbin/dhcrelay -i vlan1801 192.0.2.194 192.0.2.196 _dhcp 10054 0.0 0.0 540 876 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1966 192.0.2.194 192.0.2.196 _dhcp 58426 0.0 0.0 544 828 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1865 192.0.2.194 192.0.2.196 _dhcp 18360 0.0 0.0 540 1052 ?? Isp 10Nov17 0:00.76 /usr/sbin/dhcrelay -i vlan1866 192.0.2.194 192.0.2.196 _dhcp 20122 0.0 0.0 540 1000 ?? Isp 10Nov17 0:28.13 /usr/sbin/dhcrelay -i vlan1901 192.0.2.194 192.0.2.196 _dhcp 13328 0.0 0.0 536 884 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan1965 192.0.2.194 192.0.2.196 _dhcp 478 0.0 0.0 536 1004 ?? Isp 10Nov17 8:42.61 /usr/sbin/dhcrelay -i vlan2001 192.0.2.194 192.0.2.196 _dhcp 9283 0.0 0.0 536 1040 ?? Isp 10Nov17 0:00.04 /usr/sbin/dhcrelay -i vlan2008 192.0.2.194 192.0.2.196 _dhcp 35765 0.0 0.0 536 1036 ?? Isp 10Nov17 0:40.38 /usr/sbin/dhcrelay -i vlan2065 192.0.2.194 192.0.2.196 _dhcp 68344 0.0 0.0 544 1020 ?? Isp 10Nov17 0:05.28 /usr/sbin/dhcrelay -i vlan2066 192.0.2.194 192.0.2.196 _dhcp 898 0.0 0.0 540 1076 ?? Isp 10Nov17 0:15.26 /usr/sbin/dhcrelay -i vlan2067 192.0.2.194 192.0.2.196 _dhcp 26555 0.0 0.0 532 1000 ?? Isp 10Nov17 0:00.00 /usr/sbin/dhcrelay -i vlan2068 192.0.2.194 192.0.2.196 _dhcp 46351 0.0 0.0 536 1056 ?? Isp 10Nov17 0:02.12 /usr/sbin/dhcrelay -i vlan2547 192.0.2.194 192.0.2.196 _dhcp 27738 0.0 0.0 532 1052 ?? Ssp 10Nov17 28:37.87 /usr/sbin/dhcrelay -i vlan2506 192.0.2.194 192.0.2.196 _dhcp 78389 0.0 0.0 536 1004 ?? Ssp 10Nov17 11:40.86 /usr/sbin/dhcrelay -i vlan2533 192.0.2.194 192.0.2.196 _dhcp 24383 0.0 0.0 536 1060 ?? Isp 10Nov17 3:37.18 /usr/sbin/dhcrelay -i vlan2536 192.0.2.194 192.0.2.196 _dhcp 4846 0.0 0.0 544 948 ?? Isp 10Nov17 0:18.87 /usr/sbin/dhcrelay -i vlan2531 192.0.2.194 192.0.2.196 _dhcp 68578 0.0 0.0 544 1020 ?? Isp 10Nov17 0:01.16 /usr/sbin/dhcrelay -i vlan2537 192.0.2.194 192.0.2.196 _dhcp 23768 0.0 0.0 576 1160 ?? Is Tue01PM 0:08.32 ./dhcp-relay -vi vlan865 192.0.2.194 192.0.2.196 192.168.0.10 xdlg 95826 0.0 0.0 132 372 p0 R+/3 7:50AM 0:00.00 grep dhc So I can't explain why rcctl things don't work, but you should be able to verify what's happening with rcctl -d and ps. Cheers, dlg > On 5 Mar 2019, at 07:16, Riccardo Giuntoli <tag...@gmail.com> wrote: > > Hi there, many years that i don't use this ml. I'm Riccardo writing from > Spain, nice to meet you guys. > > First of all, many compliments for the exceptional hard work that you've > done in the OpenBSD development. Just, thank you. > > Next a possible bug: > > In the OpenBSD dhcrelay(8) implementation i cannot find an option to > specify different interfaces in a single daemon instance, try to image a > router with multiple vlans and a dhcpd server in other machine in an > internal service dedicated routed ip network segment. > > The first instance is executed by the command: > > rcctl enable dhcrelay > rcctl set dhcrelay flags "-i vlanxxx DST_ADDR" > > The second one i've done this workaround: > > cd /etc/rc.d > cp -p dhcrelay dhcrelay_second > rcctl enable dhcrelay_second > rcctl set dhcrelay_second flags "-i vlanyyy DST_ADDR" > > Now if i open a tcpdump session in the router and in the server and i > configure correctly the dhcpd in the server i notice that traffic from the > dhcrelay_second to the dhclient host in the vlanyyy isn't correctly > forwarded. And it is not a pf problem. > > The strangeness is that if i don't execute the relay from rcctl but i > execute with: > > dhcrelay_second -d -i vlanyyy DST_ADDR > > it works like a charm. > > If you want more debug or pcap files or access to the machines there's no > problem at all. > > Thank you to spend your time, nice regards, > > RG > > -- > Name: Riccardo Giuntoli > Email: tag...@gmail.com > Location: Canyelles, BCN, EspaƱa > PGP Key: 0x67123739 > PGP Fingerprint: CE75 16B5 D855 842FAB54 FB5C DDC6 4640 6712 3739 > Key server: hkp://wwwkeys.eu.pgp.net