Hello,
I installed ngircd at freebsd 7.0. There are problems and questions about ngircd and irc in general.
The first problem: ---------------------------- I can´t reach ngircd from the internet when I use pf at freebsd. All other services working fine without problems. With command "tcpdump -i pflog0" I received the following errormessage: 10:46:11.913489 IP pD96FFF32.dip.t-dialin.net.7238 > test.ircd: tcp 24 [bad hdr length 0 - too short, < 20]
I tested the connection with 3 different irc clients at 2 different internet connection with the same result.
Are the realy differents between "normal" packets (for example http or ssh and irc packets about size?
Is there a solution for this problem ? -----------------------------
The secound problem: ----------------------------- When I start ngircd by restart freebsd (rc.conf: ngircd_enable=YES) I always received the errormessage: Can´t change working directory to "/nonexistent": No such file or directory". At this situation, the ChrootDir parameter is not active in ngircd.conf.
What can I do ?
When I activate Chrootdir /var/empty (defaultsetting) the irc server don´t work. (fatal error)
What can I do ? -----------------------------
The first question: ----------------------------- What is the best nickserv for ngircd ? Is there a howto about implement this nickserv to ngircd -----------------------------
Best Regards Marc
Hi Marc!
Am 13.04.2008 um 19:38 schrieb Marc Freimann:
I can´t reach ngircd from the internet when I use pf at freebsd. All other services working fine without problems. With command "tcpdump -i pflog0" I received the following errormessage: 10:46:11.913489 IP pD96FFF32.dip.t-dialin.net.7238 > test.ircd: tcp 24 [bad hdr length 0 - too short, < 20]
I tested the connection with 3 different irc clients at 2 different internet connection with the same result.
Are the realy differents between "normal" packets (for example http or ssh and irc packets about size?
No, there should be no differences. I'm not familiar with FreeBSD pf, but most probably your setup isn't working as intended.
When I start ngircd by restart freebsd (rc.conf: ngircd_enable=YES) I always received the errormessage: Can´t change working directory to "/nonexistent": No such file or directory". At this situation, the ChrootDir parameter is not active in ngircd.conf.
ngIRCd changes its working directory to the one of the user it is configured to running with. See parameter "ServerUID" in ngircd.conf. The default is "nobody", and it looks like /nonexistent is configured as its home dirctory on FreeBSD 7 -- which does not exist.
What can I do ?
- change the home directory of the user "nobody", - or better: create/use an other user for running ngIRCd an set ServerUID.
When I activate Chrootdir /var/empty (defaultsetting) the irc server don´t work. (fatal error)
What can I do ?
A chroot directory must be prepared to run daemons: the configration file, shared libraries, and eventually more must be reachable inside the chroot base directory.
What is the best nickserv for ngircd ? Is there a howto about implement this nickserv to ngircd
ngIRCd doesn't support a special services interface, so as far as I know, the are none.
Regards Alex
Marc Freimann MSBSSK@gmx.de wrote:
The first problem:
I can?t reach ngircd from the internet when I use pf at freebsd. All other services working fine without problems. With command "tcpdump -i pflog0" I received the following errormessage: 10:46:11.913489 IP pD96FFF32.dip.t-dialin.net.7238 > test.ircd: tcp 24 [bad hdr length 0 - too short, < 20]
This looks like either the client sends a garbled tcp header, or the server-side tcp stack messed it up.
FreeBSD 7 had several bugs in their TCP stack (related to tcp options), although I haven't followed these reports in detail. You should probably check recent tcp-related discussions in the FreeBSD mailing list archives, and, if neccessary file a problem report with freebsd.
In any case it looks like ngircd doesn't even receive a connection (i suppose you already checked that ngircd is listening on the correct interface and that it works without pf? ), so this is most likely an OS bug.
Are the realy differents between "normal" packets (for example http or ssh and irc packets about size?
I can't think of any. The only thing ngircd might do differently is setting IPTOS_LOWDELAY. You might want to disable this to see wether it makes a difference, just #if 0 the #if defined(IP_TOS) && defined(IPTOS_LOWDELAY) stuff in src/ngircd/conn.c, in function Init_Socket().
When I activate Chrootdir /var/empty (defaultsetting) the irc server don?t work. (fatal error)
What can I do ?
Please post the _exact_ error message. I guess that the directory /var/empty does not exist, but well. just guessing.