Portál AbcLinuxu, 20. dubna 2024 05:32


Dotaz: Nastavenie routovania

28.3.2005 22:09 barney | skóre: 6
Nastavenie routovania
Přečteno: 163×
Odpovědět | Admin
Dobrý deň.

Snažím sa rozbehať inštaláciu gentoo 2005.0, ale narážam na problém nakonfigurovania siete.Popíšem problém: pomocou príkazu net-setup eth0 nakonfigurujem sieťovku a vnútorná sieť mi beží. Dám sa do nastavenia routovania a tu nastáva problém.

Moje hodnoty:
IP: 172.16.85.6
maska: 255.255.255.0
brána: 172.16.85.254
dns: 172.16.85.254
     195.12.128.1
zadám:
route add -net 172.16.85.0 netmask 255.255.255.0 dev eth0
Príkaz zapíše v poriadku, ale keď napíšem:
route add default gw 172.16.85.254
tak mi vypíše "SIOCADDRT: Network is unreachable" a ja si uz s tým neviem poradiť. Prečítal som posty aj na tomto fóre, aj som čítal manuálové stránky, ale nezdá sa mi, že by som robil niekde chybu. Dúfam, ze niekoho nenaštvem s milióntnou otázkou na túto tému, ale ja si uz neviem rady.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

28.3.2005 22:18 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Nastavenie routovania
Odpovědět | | Sbalit | Link | Blokovat | Admin
No a nemáte už tam nějakou default bránu ?

Co poví: /sbin/ip route ?
29.3.2005 01:36 Michal Kubeček
Rozbalit Rozbalit vše Re: Nastavenie routovania
To by ta hláška zněla 'RTNETLINK answers: File exists', tohle spíš vypadá, jako kdyby buď chyběla položka, podle které by se dalo dostat na tu bránu, nebo bylo příslušné rozhraní down.
29.3.2005 10:56 barney | skóre: 6
Rozbalit Rozbalit vše Re: Nastavenie routovania
Dobrý deň.

Tak problém je vyriešený. Petr Šobáň mal pravdu. Keďže som to nastavoval cez klikaciu utilitu net-setup, tak som tam zadával aj gateway a potom to robilo psie kusy. Keď som to robil cez ifconfig:
ifconfig eth0 [IPadresa] netmask [maska]
a potom
route add -net xxx.xxx.xxx.0 netmask [maska] dev eth0
route add default gw xxx.xxx.xxx.254
tak to chodilo. Samozrejme treba mať nastavene DNS v /etc/resolv.conf.

Ďakujem za radu a prajem príjemný deň.
29.3.2005 10:59 jm
Rozbalit Rozbalit vše Re: Nastavenie routovania
Ted budete urcite pro vystrahu popraven za pouziti toho hnusneho a deprecated ifconfigu. :-D
29.3.2005 11:14 Michal Kubeček
Rozbalit Rozbalit vše Re: Nastavenie routovania
Popraven nebude, bude ukazován jako odstrašující případ, až si tu bude časem stěžovat, že shodil jedno rozhraní a spadlo mu druhé (nebo na nějakou jinou vypečenost ifconfig a spol.). Každý svého štěstí strůjcem… :-)
29.3.2005 12:23 barney | skóre: 6
Rozbalit Rozbalit vše Re: Nastavenie routovania
No rád sa nechám poučiť ako to malo byť správne. Prečo je použitie ifconfig nesprávne. Ja som momentálne rád, že mi to funguje, ale privítam aj iné riešenia :-).
29.3.2005 13:08 Michal Kubeček
Rozbalit Rozbalit vše Re: Nastavenie routovania
Správně by to mělo být (např.)

  ip addr add 111.111.111.111/26 brd + dev eth0
  ip route add default via 111.111.111.65

Použití ifconfig je špatné proto, že se jedná o nástroj, který vychází z koncepce síťových rozhraní, která se vyskytovala naposledy v jádrech řady 2.0. Od řady 2.2 je koncepce zcela odlišná a měly by se používat tomu odpovídající nástroje.

Problémy jsou například s tím, že při přiřazování více adres jednomu rozhraní ifconfig stále pracuje s jakýmisi virtuálními rozhraními (např. eth0:0), která ve skutečnosti neexistují a jsou emulována přes skutečné rozhraní (např. eth0). To se projeví např. v okamžiku, kdy zkusíte fiktivnímu rozhraní eth0:0 nastavit nějaký příznak (např. ho shodit) nebo parametr (třeba MTU); ve skutečnosti tuto operaci provedete s eth0, aniž byste o tom věděl. V kombinaci s další nectností, a to že ifconfig neumožňuje odebrat IP adresu, aniž by shodil rozhraní, to vede k dosti nepříjemným zážitkům (třeba pokud si hrajete s dalšími adresami na rozhraní, přes které jste na počítač přihlášen). A pak také příkazy jako ifconfig nebo route umožňují nastavit jen velmi malou část toho, co Linux umí - v podstatě jen to, co bylo už v jádrech řady 2.0.

29.3.2005 15:33 barney | skóre: 6
Rozbalit Rozbalit vše Re: Nastavenie routovania
Ďakujem za vysvetlenie. Vyskúšam to aj týmto spôsobom. Našťastie ja pracujem len s jednou sieťovkou a statickou IP, takže až tak do hĺbky tomu rozumieť nemusím, na druhej strane sa vždy rád niečo nové naučím.:-)
29.3.2005 11:42 ...... | skóre: 41 | blog: ...
Rozbalit Rozbalit vše Re: Nastavenie routovania
:-)
29.3.2005 13:58 Kamorek | skóre: 33 | blog: předvolební mazec | VB
Rozbalit Rozbalit vše Re: Nastavenie routovania
No tak to je teda sila. Ja si pripadam jako v risi divu. Ficim na ifconfig a iwconfig domeni, ze jsem "in" a nemel jsem nikdy zadny problem. Pokud si vytvorim ethernetovy alias eth0:0, tak je jasne, ze pokud shodim eth0, shodim take vsechny jeho aliasy.Logicky. Ale pokud nemam potrebu resit aliasy, vzdy se nastroj ifconfig choval zcela korektne a funguje bezproblemu v jadrech 2.4 i 2.6. kdyby to bylo neco stareho jako treba ipchains, tak by ho defaultne nedavali do novych distribuci, ne?

Rad bych pouzival moderni nastroje, takze pokud ipconfig je zastaraly, rad prejdu na neco moderniho. Diky za kazdou radu.
Taky si udělám nějakou studii.
29.3.2005 14:29 Michal Kubeček
Rozbalit Rozbalit vše Re: Nastavenie routovania
Pokud si vytvorim ethernetovy alias eth0:0, tak je jasne, ze pokud shodim eth0, shodim take vsechny jeho aliasy.

To právě vůbec jasné není. Jedna věc je to, jestli je rozhraní "nahozeno" (má příznak UP), druhá věc je, jestli má přiřazeny nějaké adresy. Rozhraní může být UP a nemít přiřazeny žádné IP adresy a zrovna tak může být down a mít přiřazeno několik adres. Příkaz ifconfig tohle nerozlišuje. Navíc ve skutečnosti existuje jedině interface eth0, všechny ty eth0:* jsou jen fikce, kterou vám ifconfig simuluje.

kdyby to bylo neco stareho jako treba ipchains, tak by ho defaultne nedavali do novych distribuci, ne?

Do distribucí se dávají i daleko starší věci, pro zpětnou kompatibilitu. Například dodnes je v jádrech podpora pro a.out, který už se prakticky nepoužívá někdy od roku 1995. Jenže zatímco vás nikdo nebude učit, že máte kompilovat a linkovat programy ve formátu a.out proti knihovně libc verze 4, spousta tutorialů vám dodnes do hlavy hustí, že se síťová rozhraní konfigurují příkazem ifconfig - což je tragédie. Mimochodem, ipchains patří do řady 2.2, to už byl ifconfig obsolete, ten se měl používat naposledy s 2.0.

29.3.2005 14:40 ...... | skóre: 41 | blog: ...
Rozbalit Rozbalit vše Re: Nastavenie routovania
starého psa novým kouskům nenaučíš ;-) strašně mi tato diskuze tohle připomíná ;-)
29.3.2005 14:55 Michal Kubeček
Rozbalit Rozbalit vše Re: Nastavenie routovania
Pro staré psy platí poslední věta z mého příspěvku z 11:14. Ale štěňata by se to měla učit správně, aby si zbytečně nenatloukla čumák… :-)
29.3.2005 15:25 Karel Borkovec | skóre: 28 | blog: HP_NX9010 | Tábor
Rozbalit Rozbalit vše Re: Nastavenie routovania
Myslím, že by bylo skvělé, kdyby se nějaký ochotný člověk rozhodl o této problematice napsat článek. Ocenilo by to mnoho lidí.
29.3.2005 15:37 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše OT: Re: Nastavenie routovania
OT: Myslím, že jediný ochotný člověk, který o této problematice píše vždy, když se někde objeví "ifconfig", je Michal Kubeček :-)
30.3.2005 07:43 ...... | skóre: 41 | blog: ...
Rozbalit Rozbalit vše Re: OT: Re: Nastavenie routovania
souhlas :-) právě byl nominován a zvolen ;-)
30.3.2005 10:57 Michal Kubeček
Rozbalit Rozbalit vše Re: OT: Re: Nastavenie routovania
Děkuji vám za důvěru, ale raději nic neslibuji, abych neměl výčitky svědomí. :-) Ale asi by to bylo spíš na seriál než na článek.
30.3.2005 08:30 Kamorek | skóre: 33 | blog: předvolební mazec | VB
Rozbalit Rozbalit vše Re: Nastavenie routovania
Rad bych se jeste ve zkratce zorientovat tesne pred tim, nez Michalovi vyjde jeho novy clanek o konfiguraci sitovych rozhrani :-))))

Mel jsem zato, ze v /etc/sysconfig/network-scripts mam skripty pro nahazovani sitovych rozhrani. Mam tam ifcfg-eth0, ifcfg-eth1. Jasne 2 sitove karty s jasnymi parametry pro nahozeni. Prikaz ifconfig vypise vsechny rozhrani a zda jsou UP nebo Down. Ja teda pro zjednoduseni uvazuju pouze pripad, ze mam vsechny rozhrani UP (Rozhrani s DOWN mi k nicemu, leda ze by nejak spadlo) ale v tom okamziku jej hned zase nahodim) a neuvazuju spojeni typu ppp. Takze kdyz budu chtit alias na eth0, pridam script do vyse uvedeneho adresare s nazvem ifcfg eth0:0 (eth1:0) a do nej zadam nejake parametry .

Pak service network restart a shodi a pak nahodi se vsechny rozhrani vcetne aliasu.

>>>Rozhraní může být UP a nemít přiřazeny žádné IP adresy <<<

Tak tohle se mi jeste nestalo, tezko muzu mit nahozene rozhrani bez IP (leda DHCP a jedine ze je v dosahu DHCP server, jinak se nenahodi).......

>>>a zrovna tak může být down a mít přiřazeno několik adres. <<<

..Takove rozhrani me vubec nezajima a nikdy jsem nemel nakonfeno rozhrani, ktere mi k nicemu neni (ani alias)

>>>Navíc ve skutečnosti existuje jedině interface eth0, všechny ty eth0:* jsou jen fikce, kterou vám ifconfig simuluje.<<<

S timto souhlasim...a nikdy jsem to nepoprel. Kdyz shodim eth0, shodim i vsechny jeho aliasy (eth0:0, eth0:1...)
Taky si udělám nějakou studii.
30.3.2005 11:06 Michal Kubeček
Rozbalit Rozbalit vše Re: Nastavenie routovania
Tak tohle se mi jeste nestalo, tezko muzu mit nahozene rozhrani bez IP (leda DHCP a jedine ze je v dosahu DHCP server, jinak se nenahodi).......

Ale můžete, je to velmi jednoduché, příkazem 'ip link set eth1 up rozhraní nahodíte (nastavíte mu příznak UP), ale nebude mít žádnou IP adresu. Pak si na něm můžete spustit třeba tcpdump nebo ethereal a sledovat provoz. Můžete chtít třeba komunikovat jen pomocí IPX/SPX nebo jen pomocí IPv6.

Takove rozhrani me vubec nezajima a nikdy jsem nemel nakonfeno rozhrani, ktere mi k nicemu neni (ani alias).

Nemusí jít o permanentní stav, můžete ho chtít deaktivovat dočasně. Výhoda je, že kvůli tomu nemusíte zrušit všechny přiřazené adresy a pak je tam zase vracet.

Kdyz shodim eth0, shodim i vsechny jeho aliasy (eth0:0, eth0:1...)

To je právě ten rozdíl mezi pojetím v jádrech 2.0 a v novějších jádrech. Ve skutečnosti o aliasy nejde, všechny adresy jsou rovnocenné (kromě těch, které mají příznak secondary). Můžete přidávat, odebírat nebo měnit jednotlivé adresy (IPv4 i IPv6), aniž by se to ostatních jakkoli dotklo.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.