bird/doc/slt2001/slt.tex

276 lines
13 KiB
TeX
Raw Permalink Normal View History

\magnification=\magstep1
\input epsf.tex
\input mjmac.tex
\language=\czech
\chyph
\hsize=160truemm % A4 with 25mm margins
\vsize=247truemm
\parindent=2em
\nopagenumbers
\def\hdr#1{\medskip\leftline{\bf #1}\smallskip}
\def\\{\hfil\break}
\def\BIRD{{\sc Bird}}
\def\inititemize{\vskip 1pt\begingroup
\parskip=1pt plus 0.3pt minus 0.1pt
\advance\leftskip by 3em
\advance\rightskip by 3em
\parindent=0pt
}
%%% <20>vod a historie projektu
\hdr{Na po<70><6F>tku bylo vejce aneb <20>vodem}
\noindent Internet i UNIX jsou na sv<73>t<EFBFBD> ji<6A> p<>kn<6B>ch p<>r p<>tk<74>. Po<50><6F>ta<74>e pracuj<75>c<EFBFBD>
pod nep<65>ebern<72>m mno<6E>stv<74>m unixovsk<73>ch syst<73>m<EFBFBD> od nepam<61>ti funguj<75> jako
internetov<EFBFBD> po<70>tovn<76> servery, name-servery a men<65><6E> routery. Skoro by se zd<7A>lo, <20>e
si tyto dva sv<73>ty u<> nemaj<61> co nov<6F>ho <20><>ci. V~posledn<64>ch letech ov<6F>em
v<EFBFBD>razn<EFBFBD> vzrostl v<>kon b<><62>n<EFBFBD>ch PC-<2D>ek a objevily se pro n<> karty podporuj<75>c<EFBFBD>
nejr<EFBFBD>zn<EFBFBD>j<EFBFBD><EFBFBD> s<><73>ov<6F> technologie, a~tak se tyto po<70><6F>ta<74>e staly vhodn<64>mi
kandid<EFBFBD>ty i~pro funkci router<65>. Na~mnoha m<>stech tak star<61><72> PC-<2D>ko
s~voln<6C> <20>i<EFBFBD>iteln<6C>m softwarem p<>edstihlo sv<73>ho star<61><72>ho a dra<72><61><EFBFBD>ho
komer<EFBFBD>n<EFBFBD>ho sourozence. A<>koliv podpora routingu, firewallingu a inteligentn<74>
queue management v~j<>drech t<>chto~OS (a~zejm<6A>na Linuxu) je ji<6A> velice
vysp<EFBFBD>l<EFBFBD>, je<6A>t<EFBFBD> ned<65>vno byly notn<74> zanedb<64>v<EFBFBD>ny protokoly pro dynamick<63>
routing, tradi<64>n<EFBFBD> unixovskou koncepc<70> um<75>st<73>n<EFBFBD> do~u<>ivatelsk<73>ho prostoru
v~podob<6F> routovac<61>ch daemon<6F>.
Tento nedostatek se pokou<6F>ela mezi jin<69>mi napravit tak<61> skupina nad<61>enc<6E>
na~pra<72>sk<73> Matematicko-fyzik<69>ln<6C> fakult<6C> UK, kter<65> se rozhodla jako sv<73>j
studijn<EFBFBD> projekt vytvo<76>it nov<6F>ho routovac<61>ho daemona, kter<65> by se stal
n<EFBFBD><EFBFBD><EFBFBD>m v<>c ne<6E> jen d<>stojn<6A>m konkurentem komer<65>n<EFBFBD>ch router<65> -- nejen
kop<EFBFBD>roval u<> zn<7A>m<EFBFBD> <20>e<EFBFBD>en<65>, ale tak<61> p<>isp<73>l n<><6E><EFBFBD>m nov<6F>m; na~jedn<64> stran<61>
b<EFBFBD>t stabiln<6C>m a efektivn<76>m programem pro praxi, na~stran<61> druh<75> ov<6F>em
i~laborato<74><6F> pro snadn<64> experimentov<6F>n<EFBFBD> s~nov<6F>mi my<6D>lenkami. A~tak se
narodil projekt {\it BIRD Internet Routing Daemon} (zkr<6B>cen<65> \BIRD\footnote{$^0$}{Projekt
si samoz<6F>ejm<6A> vyslou<6F>il nejr<6A>zn<7A>j<EFBFBD><6A> p<>ezd<7A>vky -- od Pt<50><74>ete a<> po~Pt<50>kovinu.}).
P<EFBFBD>vodn<EFBFBD> pl<70>ny byly sm<73>l<EFBFBD> a rozhodn<64>: Vytvo<76>it nejlep<65><70>ho routovac<61>ho
daemona na sv<73>t<EFBFBD>, kter<65> by fungoval na~v<>ech platform<72>ch, vy<76>adoval
minimum strojov<6F>ho <20>asu a pam<61>ti, podporoval v<>echny routovac<61> protokoly
atd., zkr<6B>tka sen, jak<61> m<> b<>t. P<>esko<6B>me nyn<79> dva roky v<>voje\footnote{$^1$}{b<EFBFBD>hem nich<63>
z~n<>kter<65>ch po<70>adavk<76> samoz<6F>ejm<6A> se<73>lo -- nap<61><70>klad logem projektu
se nakonec nestal pt<70><74>ek nesouc<75> v~zob<6F><62>ku sn<73>tku byliny <20>e<EFBFBD>en<65> routa \dots}
a pod<6F>vejme se, co z~toho vze<7A>lo.
%%% Sv<53>t routingu
%% v~ti<74>t<EFBFBD>n<EFBFBD> verzi p<>esko<6B><6F>me
%%% Co BIRD dok<6F><6B>e
\hdr{Kdy<EFBFBD> pt<70><74>ka lapaj<61>, p<>kn<6B> mu zp<7A>vaj<61> aneb Feature list}
\noindent \BIRD\ dostal od sv<73>ch sudi<64>ek do~v<>nku mnoh<6F> dary:
\def\icirc{\raise0.2ex\hbox{$\circ$}} % Signs frequently used for \itemize
\itemize\ibull
\:Schopnost komunikovat protokoly IPv4 i IPv6.
\:Podporu v<>ech z<>kladn<64>ch routovac<61>ch protokol<6F>:
\itemize\icirc
\:RIPv2 (Routing Information Protocol, viz RFC 1723 a 2080)\\
Ur<55>en pro intern<72> routing, dnes v<>znamu sp<73><70>e historick<63>ho.\\
Algoritmus: distance vector (Bellman-Ford).\\
Velmi pomal<61> konvergence, pou<6F>itel<65> pouze pro mali<6C>k<EFBFBD> s<>t<EFBFBD>.
\:OSPFv2 (Open Shortest Path First, viz RFC 2328)\\
Ur<55>en pro intern<72> routing, v~sou<6F>asn<73> dob<6F> asi nejb<6A><62>n<EFBFBD>j<EFBFBD><6A>.\\
Algoritmus: link state (Dijkstra).\\
Rychl<68> konvergence, ale velice komplikovan<61>.\\
Zat<61>m podporujeme pouze pro IPv4.
\:BGP4 (Border Gateway Protocol, viz RFC 1771 a 2283)\\
Standardn<64> protokol pro extern<72> routing mezi AS.\\
Rychl<68> konvergence, mo<6D>nost administrativn<76> filtrace.\\
Algoritmus: path vector (upraven<65> Bellman-Ford).
\endlist
\:Propojov<EFBFBD>n<EFBFBD> protokol<6F> a v<>m<EFBFBD>nu dat mezi nimi.
\:Schopnost uplat<61>ovat routing policy -- ur<75>ovat, kter<65> routovac<61> informace
budou od~kter<65>ch protokol<6F> p<>ij<69>m<EFBFBD>ny a do~kter<65>ch protokol<6F> vys<79>l<EFBFBD>ny.
\:Snadnou konfiguraci a <20>dr<64>bu, ale o~tom a<> pozd<7A>ji.
\:Modul<EFBFBD>rn<EFBFBD> architekturu umo<6D><6F>uj<75>c<EFBFBD> snadn<64> dopl<70>ov<6F>n<EFBFBD> nov<6F>ch protokol<6F>,
filtr<74> i jednoduch<63> portov<6F>n<EFBFBD> na~dal<61><6C> syst<73>my. (Interface k~routovac<61>m
slu<6C>b<EFBFBD>m j<>dra je bohu<68>el i mezi jednotliv<69>mi unixovsk<73>mi syst<73>my natolik
r<>znorod<6F>, <20>e dokonce i~Linux 2.0 a Linux 2.2 jsou naprogramov<6F>ny jako dva
odli<6C>n<EFBFBD> porty.)
\:A v~neposledn<64> <20>ad<61> kvalitn<74> dokumentaci jak u<>ivatelskou, tak
program<61>torskou (to je v<>tan<61> d<>sledek byt<79> <20>koln<6C>m projektem).
\endlist
%%% A jak to v<>echno propojit
\hdr{Sv<EFBFBD>t z~pta<74><61> perspektivy aneb Jak to v<>echno d<>t dohromady?}
\noindent Hlavn<76>m probl<62>mem ov<6F>em nen<65> ani tak v<>echny tyto vymo<6D>enosti naprogramovat
a popropojovat, n<>br<62> ud<75>lat to tak, aby z~toho nevznikl neudr<64>ovateln<6C>
a neefektivn<76> zmatek\footnote{$^2$}{N<EFBFBD>dhern<EFBFBD>m p<><70>kladem je Mendel<65>v pes,
jak ho kdysi nakreslil pan Kantorek.}. Z~toho se zrodil modul<75>rn<72> pohled
na~sv<73>t routingu a n<>sledn<64> i cel<65> modul<75>rn<72> architektura programu:
\bigskip
\centerline{\epsfxsize=0.9\hsize\epsfbox{../slides/obr5.eps}}
\medskip
Z<EFBFBD>kladem pohledu na~Internet z~na<6E><61> \uv{pta<EFBFBD><EFBFBD> perspektivy} je routovac<61>
tabulka. Na~n<> jsou p<>ipojeny jednotliv<69> routovac<61> protokoly -- jak
protokoly re<72>ln<6C>, tak i n<>kolik virtu<74>ln<6C>ch, jako je nap<61><70>klad protokol
Kernel zaji<6A><69>uj<75>c<EFBFBD> synchronizaci tabulky s~tabulkou j<>dra nebo protokol
Static generuj<75>c<EFBFBD> podle sv<73> konfigurace statick<63> sm<73>rov<6F>n<EFBFBD>. Ka<4B>d<EFBFBD> z~protokol<6F>
pos<EFBFBD>l<EFBFBD> do~tabulky polo<6C>ky pro v<>echny routy, kter<65> se na~z<>klad<61> sv<73>ch informac<61>
o~topologii s<>t<EFBFBD> dozv<7A>d<EFBFBD>. Tabulka pro ka<6B>dou s<><73> vyb<79>r<EFBFBD> na z<>klad<61> preferenc<6E>
jednotliv<EFBFBD>ch protokol<6F> a jejich metrik optim<69>ln<6C> sm<73>r a ten oznamuje
zp<EFBFBD>t protokol<6F>m. V~cest<73> ov<6F>em v~obou sm<73>rech stoj<6F> filtry, kter<65> mohou
tok dat regulovat -- n<>kter<65> polo<6C>ky odm<64>tat, jin<69> upravovat (nap<61><70>klad
jim p<>enastavovat metriky <20>i tagy; to se dokonce vztahuje i~na
atributy dopl<70>ovan<61> c<>lov<6F>m protokolem, proto<74>e nejprve c<>lov<6F> protokol
nastav<EFBFBD> implicitn<74> hodnoty sv<73>ch atribut<75>, pokud je ji<6A> polo<6C>ka neobsahovala,
a teprve pak dojde k~filtrov<6F>n<EFBFBD>).
Routovac<EFBFBD>ch tabulek m<><6D>e dokonce existovat v<>cero a pomoc<6F> protokolu Pipe
si mohou p<>epos<6F>lat vybran<61> polo<6C>ky. T<>m m<><6D>eme zajistit nap<61><70>klad
routing z<>visl<73> na~zdrojov<6F> adrese <20>i vstupn<70>m interfacu: u~Linuxu 2.2
<EFBFBD>i nov<6F>j<EFBFBD><6A>ho nakonfigurujeme j<>dru v<>ce routovac<61>ch tabulek a ka<6B>dou
z~nich p<>ipoj<6F>me na~jednu tabulku na<6E>i.
\hdr{Pta<EFBFBD><EFBFBD> zp<7A>v aneb User interface}
%%% User interface: konfigurace, logging a filtry. Remote control.
\noindent S<><53> se m<>n<EFBFBD> a s~n<> se mus<75> m<>nit i konfigurace s<><73>ov<6F>ch
komponent. Ta se pozvolna stala tradi<64>n<EFBFBD>m kamenem <20>razu v<>t<EFBFBD>iny router<65>.
U~tohoto kamene se toti<74> sch<63>zej<65> dva odv<64>c<EFBFBD> nep<65><70>tel<65>:
snaha o~snadnost a flexibilitu konfigurace a snaha o~nep<65>etr<74>it<69>
provoz s<>t<EFBFBD>. A~jednou slev<65> ten, podruh<75> onen -- auto<74>i n<>kter<65>ch
router<EFBFBD> vsadili na~s<>lu textov<6F>ch konfigura<72>n<EFBFBD>ch soubor<6F> za~cenu
toho, <20>e se po~ka<6B>d<EFBFBD> zm<7A>n<EFBFBD> konfigurace mus<75> router restartovat
a po~n<>jakou dobu neroutuje, jin<69> zase pod<6F><64>dili non-stop provozu
v<EFBFBD>e ostatn<74> a stvo<76>ili konfigurov<6F>n<EFBFBD> nep<65>ebern<72>m mno<6E>stv<74>m online
p<EFBFBD><EFBFBD>kaz<EFBFBD>, pomoc<6F> nich<63> se n<>kter<65> v<>ci prov<6F>d<EFBFBD>j<EFBFBD> snadno, jin<69>,
na~kter<65> auto<74>i speci<63>ln<6C> p<><70>kaz nevymysleli, u<> obt<62><74>n<EFBFBD>ji a je<6A>t<EFBFBD> jin<69>
vy<EFBFBD>aduj<EFBFBD> do~v<>sledn<64>ho stavu dosp<73>t postupn<70>m proveden<65>m mnoha zm<7A>n,
co<EFBFBD> m<> obvykle za~d<>sledek daleko del<65><6C> v<>padek ne<6E> jak<61> by byl vznikl
reloadem cel<65>ho routeru.
\BIRD\ se sna<6E><61> dos<6F>hnout oboj<6F>ho: pou<6F><75>v<EFBFBD> textov<6F> konfigura<72>n<EFBFBD> soubory,
u<EFBFBD>ivateli tak d<>v<EFBFBD> mo<6D>nost vytv<74><76>et konfiguraci v<>cem<65>n<EFBFBD> libovoln<6C>m
zp<EFBFBD>sobem -- a<> ji<6A> ru<72>n<EFBFBD>m editov<6F>n<EFBFBD>m, interaktivn<76>mi programy <20>i
automatick<EFBFBD>m generov<6F>n<EFBFBD>m pomoc<6F> script<70>. Po~zm<7A>n<EFBFBD> konfigurace je
ov<EFBFBD>em schopen si novou verzi souboru p<>e<EFBFBD><65>st, porovnat s~pr<70>v<EFBFBD>
pou<EFBFBD><EFBFBD>vanou konfigurac<61> a zm<7A>n<EFBFBD>m se za b<>hu p<><70>zp<7A>sobit (pokud
jsou zm<7A>ny p<><70>li<6C> velk<6C>, m<><6D>e to zp<7A>sobit restart
n<EFBFBD>kter<EFBFBD>ho z~protokol<6F>, ale provoz t<>ch, kter<65>ch se zm<7A>na
net<EFBFBD>kala, to nijak neohroz<6F>).
Konfigurace ka<6B>d<EFBFBD>ho protokolu (l<>pe <20>e<EFBFBD>eno ka<6B>d<EFBFBD> jeho instance --
protokoly mohou b<>t spu<70>t<EFBFBD>ny n<>kolikr<6B>t na~r<>zn<7A>ch rozhran<61>ch
<EFBFBD>i nad r<>zn<7A>mi tabulkami) vypad<61> p<>ibli<6C>n<EFBFBD> takto:
\verbatim{ protocol bgp TestBGP { # instanci si m<><6D>eme nazvat
local as 65000; # n<><6E> AS
neighbor 195.39.3.64 as 5588; # sousedn<64> AS
export all; # pos<6F>lat budeme v<>echno
import filter { # na vstupu n<>kter<65> odm<64>tneme
if !(bgp_path ~ / ? 5588 ? /) then reject;
if net ~ [ 10.0.0.0/8+, 192.168.0.0/16+ ] then reject;
preference = 101; # zbyl<79>m nastav<61>me preferenci
accept; # a p<>ijmeme je
};
}}
\noindent V<>dy popisuje protokol, jeho parametry, p<>ipojen<65> k~tabulk<6C>m
(v~na<6E>em p<><70>pad<61> pou<6F><75>v<EFBFBD>me tabulku implicitn<74>) a nastaven<65> vstupn<70>ch
i~v<>stupn<70>ch filtr<74>.
Filtry jsou popisov<6F>ny jednoduch<63>m procedur<75>ln<6C>m programovac<61>m jazykem,
kter<EFBFBD> m<> k~dispozici v<>echny informace o~pr<70>v<EFBFBD> zpracov<6F>van<61> polo<6C>ce, m<><6D>e
se podle nich rozhodovat a libovoln<6C> je m<>nit. D<>ky tomu je mo<6D>n<EFBFBD> jednodu<64>e
zad<EFBFBD>vat i velice slo<6C>it<69> pravidla, definovat si podprogramy sd<73>len<65>
filtry pat<61><74>c<EFBFBD>mi k~v<>ce protokol<6F>m, i~po<70><6F>tat metriky pro jeden protokol
na z<>klad<61> metrik protokol<6F> ostatn<74>ch.
V<EFBFBD>tan<EFBFBD>m pomocn<63>kem p<>i odhalov<6F>n<EFBFBD> probl<62>m<EFBFBD> v~s<>t<EFBFBD>ch je rovn<76><6E> voliteln<6C>
logov<EFBFBD>n<EFBFBD> d<>le<6C>it<69>ch ud<75>lost<73> a trasov<6F>n<EFBFBD> <20>innosti protokol<6F>: zde si je
mo<EFBFBD>no pro ka<6B>d<EFBFBD> protokol vy<76><79>dat prakticky cokoliv po<70><6F>naje z<>kladn<64>mi informacemi o~b<>hu
protokolu (p<>ipojov<6F>n<EFBFBD> a odpojov<6F>n<EFBFBD> soused<65> apod.), p<>es v<>m<EFBFBD>nu polo<6C>ek
mezi protokolem, filtry a jeho tabulkou, a kon<6F>e detailn<6C>m v<>pisem v<>ech
p<EFBFBD>ijat<EFBFBD>ch i odeslan<61>ch paket<65>.
Mimo to \BIRD\ disponuje \uv{d<EFBFBD>lkov<EFBFBD>m ovl<76>d<EFBFBD>n<EFBFBD>m} -- jednoduch<63>m p<><70>kazov<6F>m
rozhran<EFBFBD>m, p<>es kter<65> se mohou p<>ipojovat r<>zn<7A> klienti a vyd<79>vat jak
n<EFBFBD>kter<EFBFBD> <20><>d<EFBFBD>c<EFBFBD> p<><70>kazy (restarty protokol<6F>, reload konfigurace, p<>ep<65>n<EFBFBD>n<EFBFBD>
trasov<EFBFBD>n<EFBFBD>, \dots), tak po<70>adavky na~vypisov<6F>n<EFBFBD> stavu routovac<61>ch tabulek
a protokol<6F>. U~t<>chto p<><70>kaz<61> je mo<6D>no vyu<79><75>vat pln<6C> s<>ly filtrovac<61>ho
jazyka, tak<61>e chceme-li nap<61><70>klad zn<7A>t v<>echny routy sm<73>rovan<61> pomoc<6F>
BGP na jednoho konkr<6B>tn<74>ho souseda, sta<74><61> polo<6C>it dotaz typu
\verbatim{ bird> show route where source=RTS_BGP && gw=62.168.0.1}
\noindent a dozv<7A>me se ihned v<>e, co jsme pot<6F>ebovali. Lad<61>n<EFBFBD> filtr<74>
nav<EFBFBD>c usnadn<64> i~to, <20>e se m<><6D>eme zeptat na~obsah routovac<61> tabulky
z~pohledu n<>kter<65>ho z~b<><62><EFBFBD>c<EFBFBD>ch protokol<6F>.
%%% BIRD uvnit<69>
%\hdr{Pta<74><61> anatomie}
%% existuje progdoc
%%% Netradicni pouziti
\hdr{Cesty ta<74>n<EFBFBD>ch pt<70>k<EFBFBD> aneb Za hranicemi v<>edn<64>ch dn<64>}
\noindent Hotov<6F> modul<75>rn<72> implementace routovac<61>ho daemona samoz<6F>ejm<6A>
sv<EFBFBD>d<EFBFBD> i k~m<>n<EFBFBD> tradi<64>n<EFBFBD>mu vyu<79>it<69>. Zde se fantazii meze nekladou, autory
sam<EFBFBD> b<>hem v<>voje napadly nap<61><70>klad tyto triky:
\itemize\ibull
\:{\I multirouter} -- \uv{schizofrenn<EFBFBD>} za<7A><61>zen<65> pracuj<75>c<EFBFBD> na r<>zn<7A>ch
skupin<69>ch interfac<61> jako r<>zn<7A> routery <20><>d<EFBFBD>c<EFBFBD> se r<>zn<7A>mi pravidly,
le<6C><65>c<EFBFBD> t<>eba i v~r<>zn<7A>ch autonomn<6D>ch syst<73>mech. To je mo<6D>no za<7A><61>dit
pat<61>i<EFBFBD>n<EFBFBD>m nastaven<65>m j<>dra a bu<62>to v<>ce b<><62><EFBFBD>c<EFBFBD>mi \BIRD{}y nebo dokonce
jedn<64>m pracuj<75>c<EFBFBD>m s~n<>kolika r<>zn<7A>mi routovac<61>mi tabulkami. Tak by
mohl nap<61><70>klad cel<65> pra<72>sk<73> NIX b<><62>et na jedin<69>m routeru (pravda,
b<><62>n<EFBFBD> PC by na to nesta<74><61>lo), a p<>esto by si ka<6B>d<EFBFBD> provider mohl s<>m
ur<75>ovat a konfigurovat svou vlastn<74> routovac<61> politiku.
\:{\I <20>ed<65> eminence} -- \BIRD\ by ani nemusel b<><62>et p<><70>mo na~stroji, kter<65>
pakety routuje, mohl by tak<61> hotov<6F> routovac<61> tabulky diktovat
n<>jak<61>mu dedikovan<61>mu routeru disponuj<75>c<EFBFBD>m v<>konn<6E>j<EFBFBD><6A>m hardwarem,
a tak skloubit <20>pi<70>kovou propustnost \uv{velk<EFBFBD>ho <20>eleza}
s~flexibilitou routeru be<62><65>c<EFBFBD>ho pod unixovsk<73>m syst<73>mem.
\:{\I inteligentn<74> mirror} -- aplikace se nemus<75> zastavovat u~routingu
jako takov<6F>ho, mnohdy je mo<6D>no informace z<>skan<61> z~provozu routeru
vyu<79><75>vat k~dal<61><6C>m <20><>el<65>m, nap<61><70>klad k~inteligentn<74>mu p<>esm<73>rov<6F>v<EFBFBD>n<EFBFBD>
klient<6E> na~nejbli<6C><69><EFBFBD> mirror va<76>eho archivu.
\endlist
%%% A co dal?
\hdr{<EFBFBD>as pt<70><74>at aneb Co d<>l?}
P<EFBFBD>esto<EFBFBD>e po~<7E>sp<73><70>n<EFBFBD>m obh<62>jen<65> projektu a prvn<76>ch n<>kolika des<65>tk<74>ch
spokojen<EFBFBD>ch u<>ivatel<65> (a samoz<6F>ejm<6A> i~p<>r opraven<65>ch chyb<79>ch) nyn<79> v<>voj
sp<EFBFBD><EFBFBD>e stagnuje, auto<74>i ji<6A> sp<73><70>daj<61> pl<70>ny do~budoucnosti, kter<65>
by m<>ly \BIRD{}ovi p<>in<69>st mimo jin<69> tak<61> routov<6F>n<EFBFBD> multicast<73>, agregaci
s<EFBFBD><EFBFBD>ov<EFBFBD>ch prefix<69>, OSPFv3 pro IPv6, on-demand linky a porty na~dal<61><6C> syst<73>my.
%%% Reference na n<>s a ostatn<74> routery
\hdr{Sn<EFBFBD><EFBFBD>ka odkaz<61> na z<>v<EFBFBD>r}
\noindent {\sc Bird Team} pod veden<65>m RNDr. Libora Forsta ({\I forst@cuni.cz}) tvo<76>ili:
$$\vbox{\halign{#\hfil & \quad \it # \hfil & \quad \it # \hfil\cr
Ond<EFBFBD>ej Filip&feela@ipex.cz&http:/$\!$/feela.ipex.cz/\cr
Martin Mare<72>&mj@ucw.cz&http:/$\!$/atrey.karlin.mff.cuni.cz/\char126mj/\cr
Pavel Machek&pavel@ucw.cz&http:/$\!$/atrey.karlin.mff.cuni.cz/\char126pavel/\cr}}$$
Dom<EFBFBD>c<EFBFBD> str<74>nku projektu najdete na {\it http:/$\!$/bird.network.cz/,} odtamtud ji<6A>
vedou odkazy na~aktu<74>ln<6C> verzi, online dokumentaci i mailing list
u<EFBFBD>ivatel<EFBFBD>.
V<EFBFBD>echna zmi<6D>ovan<61> RFC i mnoho dal<61><6C>ch naleznete na {\it http:/$\!$/www.rfc-editor.org/},
prvn<EFBFBD> my<6D>lenky o~vyu<79><75>v<EFBFBD>n<EFBFBD> ptactva v~Internetu sahaj<61> a<> k~RFC~1149.
\BIRD\ nen<EFBFBD> na~sv<73>t<EFBFBD> s<>m, m<> i~p<><70>buzn<7A>; mezi nimi za zm<7A>nku stoj<6F>
daemoni {\sc GateD} ({\I http:/$\!$/www.gated.org/}), \hbox{\sc Zebra} ({\I http:/$\!$/www.zebra.org/})
a {\sc Mrtd} ({\I http:/$\!$/www.mrtd.net/}).
O~IPv6 se bohu<68>el zat<61>m jen p<><70>e, na~jeho celointernetov<6F> nasazen<65> se st<73>le
<EFBFBD>ek<EFBFBD> a mezit<69>m p<>ib<69>v<EFBFBD> address-translator<6F> a dal<61><6C>ch zv<7A>rstev. Snad jedin<69>
v<EFBFBD>t<EFBFBD><EFBFBD> s<><73> pou<6F><75>vaj<61>c<EFBFBD> tento protokol je experiment<6E>ln<6C> virtu<74>ln<6C> s<><73> 6-bone
(viz {\it http:/$\!$/www.6bone.net/} a odkazy odtamtud).
Dotazy a p<>ipom<6F>nky pos<6F>lejte bu<62>to autorovi nebo cel<65>mu {\sc Bird Team}u na~adresu
{\I bird@bird.network.cz}.
\bye