ZONES, ZONEGATES, ZONEHOSTS AND IFNA KLUDGES

Tom Jennings
25 Jan 88

I believe Fido/FidoNet 12f's addressing is spirit & letter of the¨
"law". It works as follows:
 
I am node 1:125/111. I enter a message to 2:500/1. Fido does¨
this:
 
a)      Create the .MSG file as we all know it.

b)      Since the destination is outside our own zone:

        1) put the ifna kludge algorithmic address into 
           the .MSG file header: "myzone/destzone". This case, 
           the message is marked "1/2", ie. implied full address 
           is "1:1/2", if the IFNA Kludge "zone gate".

        2) Put the "full" address into the INTL line:
           "^AINTL 2:500/1 1:125/111". 
 
Programs that don't understand the INTL line just route according¨
to ancient tradition to 1/2, with no side effects. Programs that¨
understand INTL lines do whatever it is they decide to do.
 
The only thing that Fido does that is different here is that it¨
hides the ugliness. Fido has a pure three level addressing¨
scheme, and knows enough to how to treat what I call "fully¨
addressed" (INTL lines) messages properly.
 
By default, Fido treats the network as a true three level¨
addressing scheme; a message addressed to "2:500/1" will go to¨
"2:0/0", the host for that zone. Zone Host not Zone Gate. I¨
realize this isn't what is desired, IFNA kludge or not, and am¨
not trying to foist anything on anyone. The intent was a "pure"¨
FidoNet three level mailer, and thats what I got.
 
The problem is solved by the router. There is a route file,¨
supplied with the FIDO.EXE program, called ROUTE.DEF. It only has¨
to exist, and it is applied to *all* possible FidoNet routing¨
unless overridden. By default, Fido will do the Zone Host¨
routing; all you do is specify a new host:
 
Zone 2; ZoneGate 1:1/2
...
Zone N; ZoneGate 1:1/N
 
A ROUTE.DEF file is supplied with Fido v12f. Instead of all mail¨
for zone 2 going to "2:0/0", the "pure" ZoneHost, it goes to (in¨
this example) "1:1/2". It could all go to "1:125/31" and drive¨
Bob Kovach crazy. It could even go to "3:1/1" and waste¨
everybodys time. For a Fido operated in Europe, in Zone 2, it¨
would have a ROUTE.DEF that contained:
 
Zone 1; ZoneGate 2:2/1

My intent was to build a mailer devoid of all kludges, plus solve¨
the stupid shit IFNA Kludge thing. Plus not force someone to use¨
"my way".

Zones are here to stay, and I do not like coding things twice.¨
Network addressing issues are very serious, and we have to live¨
with them for years, and I want to do things "right". This is my¨
solution; if anyone is interested in implementation details just¨
ask!
