The joy of open source software (#2)
When I moved out of the co-lo, my plan was to rent a virtual server for secondary DNS and as a place to put the weblog and the rest of my website, but move mail home so I didn’t have to chatter across the wire to retrieve and send mail.
So I set up a copy of postoffice at home, put a secondary mx on virtual gehenna, tweaked the configurations to properly mxpool
, and settled back expecting I’d not have to do any sort of work on the mail front for quite some time. Silly me. Of course something would have to go wrong; and in this case, the “go wrong” was that any mail going from my secondary mx (and, as it turned out, a largish population of external web servers) to the main postoffice would just not show up if the mail body was >1024 bytes long.
Test messages, no problem. So I didn’t see it when I was doing connectivity checks. But real messages would either (a) just never materialize or, worse yet, only partially materialize (in the form of truncated headers if sent from postoffice or nothing at all if sent from a copy of sendmail that batched everything up in one big buffer and shot it down the wire when it was done.) And after a considerable amount of debugging (including writing mail to the support desks at the local phone company and the people who are leasing me the virtual server asking if they were doing any sort of mail filtering/blocking) I decided that “something” in the network was just dropping packets if they were punched down the pipe too quickly (this I verified by modifying postoffice to do a 1 second delay after every thousand bytes of message, which converted mail sending from mysterious timeouts to happy data processing.)
It wasn’t the Apple Airport that I’m using as the home switch, because I can shovel mail across it at full speed without any packets disappearing. It wasn’t every external site, because my mail from the iBob list, the ORRando list, and the markdown list was all getting here without complaint. But some sites, and that included virtual gehenna, would never be able to send mail if the body of the mail was over 1k long.
There aren’t too many things to blame. I can, I suppose, try to blame the routers that Qwest uses, but if they were in the habit of dropping mail I’d see commentary about it online. So, no, probably not them (and if it WAS qwest, I’d have seen many more connection timeouts what with the amount of spam coming in from compromised machines) and that leaves only one thing remaining; the little Linux machine that acts as a bridge between the DSL line and my network. So I’ve sent a note out to Qwest asking if there are any firmware issues with the thing, and if there aren’t how much it would cost to replace it with a different crappy little Linux bridge box.
And in the meantime I’ve moved my mail over to virtual gehenna. Oy. This gives me the encouragement I need to implement STARTTLS in postoffice and vm-pop3d, but this is not something I want to implement with a gun being waved about my head.
I hate computers.