
\section{FidoNet addressing and the IFNA kludge}
\lline{Tom Jennings}
\lline{25 Jan 88}

I believe Fido/FidoNet starting with 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:\par
 
{\obeylines\parskip=0pt
1) Create the .MSG file as we all know it.

2) Since the destination is outside our own zone:

2a) 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''.

2b) Put the ``full'' address into the INTL line:
    ``Control-A)INTL 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¨
mathematically correct ``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 that's 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:
 
{\tty
Zone 2; ZoneGate 1:1/2
\dots
Zone N; ZoneGate 1:1/N
\dots
}

A ROUTE.DEF file is supplied with Fido. 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:
 
\lline{\tt Zone 1; ZoneGate 2:2/1}

My intent was to build a mailer devoid of all kludges, plus solve¨
the stupid 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!
