DNS segfault in control panel

Swift-AU

Verified User
Joined
Dec 31, 2003
Messages
69
Just today when attempting to modify the DNS for the main (admin) domain name on my DA box, I was presenting with a segmentation fault error message. The error.log shows the following:

2004:06:18-11:08:40: *** Segmentation fault *** getlock(/etc/namedb/somehost.net.au.db) : finished : User: admin : 211.xx.xxx.109 : /CMD_DNS_ADMIN : domain=somehost.net.au : (null)

Modifying the DNS for any other domain on the box is not a problem. I've checked the permissions on /etc/namedb/somehost.net.au.db and they are the same as for all the other domains. I've also verified the contents of the file, and everything appears in tact.

I haven't yet tried to remove the file and re-create it, because I'd like to get to the bottom of the problem first, in case it happens again.

If it helps any, I had added and then removed a sub domain on somehost.net.au, prior to accessing the DNS management. Possibly removing the sub domain has done something to the DNS file that DA doesn't like (although I can't gaurantee it was working prior to this, as I didn't try it.)

O/S is FBSD 4.9 running latest DA release.

Thanks,
Swift
 
Take a look at the file, and it's rights and ownership, for both the domain with the problems and another domain, trying to find unexplained differences.

Jeff
 
The problem .db file has exactly the same ownership and permissions as the working ones, those being:

-rw-r--r-- 1 root wheel

Cheers...
Swift
 
Well, there's got to be a difference somewhere.

Have you tried posting to any of the FreeBSD lists or to the bind-users list or bind newsgroup?

Jeff
 
I don't think the issue is with bind, as bind reads the .db file correctly, produces no error messages, and ns lookups on the domain work fine. It's only DA that for whatever reason can't read this particular .db file.
 
Can you modify other domains ok, or is the problem with all of them?

Chris
 
check /var/named to see if theres any lock files there.

also, you could try:

fuser -v /var/named/domain.com.db (it may just go straight back to command line)

Chris
 
On FreeBSD, there is no /var/named, but elsewhere I can't find any locks for named.

FreeBSD (4.9) also doesn't have the fuser command, but as I've restarted the server, I doubt any processes have the file open. And it's definately not under an exclusive lock, as I can both read and write to the problem .db file.
 
I tried removing the extra blank lines that DA inserts at the end of each .db file, and lo and behold I was able to view the DNS records in DA. However, after adding another record (of any type), DA would again throw up a seg fault error, and once again I was unable to go back in and make further changes. The record I added had however been inserted into the .db file in the correct spot, and the extra blank lines at the end where also added. So it seems that DA is for some reason updating the .db file in it's usual manner, but is then unable to read it in again.
 
Yep, I have just tried Swift's fix to remove the extra blank lines, and it works. But then I have other domains and the db files also have identical number of blank lines and there is no problem !?!? :confused:
 
That's excellent news John. Until wombat replied, I was beginning to think it was just me :)

Cheers...
Swift
 
Back
Top