DNS icon indicating copy to clipboard operation
DNS copied to clipboard

In Badcow\DNS\Parser\Parser $origin is ignored when records are parsed

Open AnrDaemon opened this issue 5 months ago • 0 comments

A simple example would be

$origin example.org.
@ IN 10800 SOA example.org. postmaster 2 3600 7200 10800 3600

This should produce rname = postmaster.example.org., but not… the actual result is postmaster... And $zone->getName() also not fixed after processing SOA record.

The situation gets worse when multiple $origin records are encountered during the zone parsing.

Read world example:

$ORIGIN .
$TTL 86400      ; 1 day
darkdragon.lan          IN SOA  ns.darkdragon.lan. info.darkdragon.lan. (
                                2025070501 ; serial
                                19200      ; refresh (5 hours 20 minutes)
                                3600       ; retry (1 hour)
                                38400      ; expire (10 hours 40 minutes)
                                38400      ; minimum (10 hours 40 minutes)
                                )
                        NS      ns.darkdragon.lan.
                        A       192.168.1.12
                        MX      10 daemon2.darkdragon.lan.
                        TXT     "v=spf1 a mx -all"
$ORIGIN darkdragon.lan.
_amqps._tcp             SRV     1 0 5671 rabbitmq
_ts3._udp               SRV     1 0 9987 pubserver64
ads                     NS      dc2
adsl                    A       192.168.1.2
anrdaemon               CNAME   hosting64
daemon1                 A       192.168.1.12
daemon2                 A       192.168.1.10
daemon3s                A       192.168.1.13
$ORIGIN mc.darkdragon.lan.
_minecraft._tcp         SRV     1 0 25565 daemon2
                        SRV     5 0 25565 daemon1
$ORIGIN darkdragon.lan.
mc-sfs                  A       192.168.1.16
mc-tamik                A       192.168.1.17
$ORIGIN mc-tamik.darkdragon.lan.
_minecraft._tcp         SRV 2 0 25566 mc-tamik.darkdragon.lan.
$ORIGIN darkdragon.lan.
mysql                   A       192.168.1.7
ns                      A       192.168.1.12
ntp                     CNAME   time
pubserver64             A       192.168.1.6

AnrDaemon avatar Aug 12 '25 18:08 AnrDaemon