Centroid.EU Blog

(this blog is mostly encrypted - adults only)

Previous Page

Gmail has started blocking me, after 5 years

February 20th, 2019

It's worked for five years. See here. I haven't changed much in the last little while to cause any problems. So it's gmail who have updated some policy. I complained to them, and hoping to get this straightened out.


German Politics: What does the SPD want?

February 18th, 2019

It seems to me that the SPD is a puppet of a coalition partner. They keep saying "may we?" and one really wonders what they are doing in government. My statement to you: Make up your minds, because the outcome will determine your votes next election. Meanwhile we have a real lack in fairness in this social fabric in Germany. What are you gonna do, SPD?! And if it all fails why are you still a coalition partner, in government?!


Delphinusdnsd has a new database

February 16th, 2019

I spent monday to friday working on this, today I did a bit of regress work to test records, I haven't found a bug since yesterday afternoon/evening. The memory footprint of delphinusdnsd has been drastically reduced by order of thousands. To give you some eye candy:

beta$ dddctl configtest -c
Records = 266094 , OK
beta$ ps auxwww|grep delphinusdnsd
_ddd      3694  0.0  0.0  1140  1164 ??  Ip     9:50PM    0:00.01 \
	delphinusdnsd: unix controlling socket (delphinusdnsd)
root     88773  0.0  0.0  1108  1292 ??  Ssp    9:50PM    0:00.94 \
	delphinusdnsd: master (delphinusdnsd)
_ddd      9236  0.0  1.4 467124 475856 ??  Sp     9:50PM    0:04.26 \
	/usr/local/sbin/delphinusdnsd -l
beta$ time dddctl configtest -c
Records = 266094 , OK
    0m02.83s real     0m01.84s user     0m00.48s system

To explain this I have created a zone of A records from /usr/share/dict/words which are 250K or so, on top of the 30K words I had in a zone. Before the 30K words too 13GB virtual memory, now 266093 records take up 467124K or 456M virtual memory. I think it's super personally. Thanks to Otto at OpenBSD who made me realise I need to change my database as the OS won't give me any more. This is better anyhow. I have been thinking on how to apply my dns server with this new db and I'm thinking of creating an updateable DNS server that stores PAGEs from RAM of a computer. Because it is so fast I think it would make wonderful project. Here in regards to its speed:

beta$ dddctl query -@ antidisestablishmentarianism.words2
;; QUERY TIME: 1 ms
;; WHEN: Sat Feb 16 09:30:09 2019
;; MSG SIZE  rcvd: 80

Before you grab a snapshot for this new database daemon give it a week for bugs to be found and ironed out. But I checked it against current centroid.eu zone and it seems to be OK. Anyhow remember the license says "AS IS", so it's your fault if you use it now. This database will be in the 1.4 release which will likely be in december.


Actively working for 3G DB on Delphinusdnsd

February 13th, 2019

The last two days I've been working on new database on delphinusdnsd. The code needs to be adjusted and every file possibly will get touched. I may be able to commit it on friday or next week, depending how long it takes. The new database is not much unlike what I have written in the previous article (fixed up for technicalities such as the _ENTRY's and TAILQ_HEAD's). What I wrote previous article was without guidance of manual pages.


A new database for Delphinusdnsd

February 9th, 2019

Somehow it seems like I'm always replacing the database. It's true. I'm not happy at the moment with the current database, see here. It takes up too much virtual memory. So today I doodled a little with something that I think this should be replaced with (it looks almost like a structure out of McKusicks book):

struct sdomain {
	RB_ENTRY(rb_node);		/* RB_ENTRY for domain name */
	u_int16_t rrtype;		/* rrtype for domain name */
	TAILQ_ENTRY(domain);		/* tailq of more sdomains's */
	TAILQ_ENTRY(record);		/* tailq of rrtype type entries */

struct domain_a {
	TAILQ_ENTRY(record);		/* tailq of rrtype type entries */
	struct in_addr ia;		/* holds the A RDATA */
	u_int8_t region;		/* possible region for split horizon */

| RB_TREE     |
        | centroid.eu
        |	+----------+	+-----------+	+----------+
        +-------| sdomain  |----| sdomain   |---| sdomain  |---> NULL
        |	+----------+	+-----------+	+----------+
        |	     |		      |		     |
        |	     |		      |		     |
        |	+----------+	+-----------+	+----------+
        |	| domain_a |	| domain_soa|	| domain_ns|
        |	+----------+	+-----------+	+----------+
        |	     |		      |		     |
        |	     v		      v		     |
	|	    NULL	     NULL	+----------+
        |	      		       		| domain_ns|	
	|	   				+----------+
	|					     |
	|					     v
	|					    NULL  
        | name.centroid.eu
        |	+----------+	
        +-------| sdomain  |---> NULL
        |	+----------+	
        |	     |		    
        |	     |		   
        |	+----------+
        |	| domain_a |
        |	+----------+	
        |	     |		   
        |	     v		   
        |	    NULL 

So there it is, ASCII art. I'm gonna think about this for a few days before getting started, because this is kinda urgent.


Delphinusdns is one step closer to replicant mode

February 8th, 2019

This last week I've been working on AXFR routines for delphinusdnsd. In order to test the functions I put them into dddctl query. Here a sample axfr output:

beta$ dddctl query -@  -ZP 10053 axfr 8.b.d.
zone "8.b.d." {
;; QUERY TIME: 8 ms
;; WHEN: Fri Feb  8 09:29:28 2019
;; XFR size 4 records (bytes 386)

I put the \'s in there to show it better on my blog. Here is the help for dddctl query:

beta$ dddctl help query
usage: dddctl query [-46BDITZ] [-@ server] [-P port] [-p file] name command
        -@ server               Use server ip.
        -4              Use IPv4 only.
        -6              Use IPv6 only.
        -B              Output as a BIND file.
        -D              Use DNSSEC (DO bit) lookup.
        -I              Indent output.
        -T              Use TCP.
        -Z              Output as a zonefile.
        -P port         Use specified port.
        -p file         Output to file.

Well I've been fiddling with the formatting of this all and I'm not fully satisfied (it's gotta look like dig! :-). But I'll get there. Maybe next week I'll be able to pull zones from a delphinusdnsd.


News from Goldflipper

February 2nd, 2019

What is Goldflipper doing these days? Have a look.

Such a goldy!


Purchased 3 books from Amazon

January 31st, 2019

  • Inside Windows Debugging: A Practical Guide to Debugging and Tracing Strategies in Windows - Tarik Soulami
  • Windows Internals, Part 1 - Pavel Yosifovich et al.
  • Troubleshooting with the Windows Sysinternals Tools - Mark Russinovich
I paid premium delivery because I didn't want to wait around on saturday for the books to arrive, they'll be delivered friday. Next time I buy books it should be earlier in the week.


Delphinusdnsd now uses control sockets instead of pidfile

January 30th, 2019

Running delphinusdnsd twice or three times at a time on a single host (but different ports) has always been pretty hard as there was some confusion to the pidfiles. I tried to solve this with a control socket that is controllable via dddctl. Stopping and restarting delphinusdnsd should now work well, you can start it too but are only limited to 2 argument options (-s and -f) to a start. -s is specifying the path to a socket and -f specifies the config file to use. I know I'll enjoy this very much.


Cut 12% from delphinusdnsd.c of delphinusdnsd

January 26th, 2019

Yesterday I was in a coding mood. I didn't have much time, but this is the diff I came up with. I touched code that was close to 15 years old and removed it! I'm very proud of this feat! It wasn't really bad, code but it could have been compacted a lot more, that's what I did. The result may be a bit slower for answers in delphinusdnsd, but the code is a lot more manageable/readable.


Next Page


RSS Feed

Click here for RSS

On this day in

Other links

Have feedback?

By clicking on the header of an article you will be served a cookie. If you do not agree to this do not click on the header. Thanks!

Using a text-based webbrowser?

... such as lynx? Welcome back it's working again for the time being.

Older Blog Entries

Powered by BCHS