Linux alatt az ....-t használom.

Címkék

ifconfig
90% (553 szavazat)
ip addr show
10% (61 szavazat)
Összes szavazat: 614

Hozzászólások

Azért az is elég höjjjjén néz ki, hogy egy toollal fel lehet venni olyan címet, amit egy másik tool nem listáz... Ha ilyen obsolete, akkor mi a túróért nem kukázták drákói szigorral? Érdekes módon Ubuntu-ék az szerencsétlen Unity/gnome3, sudo csoportot és még mittomit tudják variálni (azóta már Xubuntu-zok), mert obsolete, de ehhez nem nyúlnak. Így a büdös életben nem fog kikopni, pedig jó lenne eldönteni, hogy akkor most télleg obsolete vagy csak sok volt a tenta és ráírták.

Gondolom azert, mert senkinek nem volt kedve eddig a kiscsillio shell scipttel osszeragasztozott vackot es az egyeb programokat, amely shellbol hivogatja atirni. (Mikor egy OpenVPN kepes erre...)

Persze, ilyenkor fel lehetne tenni a kerdest, hogy jo-e az, hogy nem egy fix api (pl. WinAPI, .NET FW vagy akarmi hasonlo) erre a bevett, hanem mindenfele textstream osszecelluxozasa.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Ez mar megint annak a problematikaja, hogy nincs centralizaltan definialva, hogy egy Linux kernel+GNU toolok alapu operacios rendszerben mi is az eppen aktualis hasznalando eszkozkeszlet. Emiatt persze sokkal koltsegesebb uzemeltetni egy vegyes Linux rendszerekbol allo szamitogephalmazt, mint ha mindenhol centralizalt tervezesre epulo OS-es lennenek. Persze ez a problema nem all fenn akkor, ha csak egyfele disztribuciot hasznal az ember.
Viszont ami megint koltsegesse valik, az a tudas megszerzese. Nincs olyan, hogy "ertek a Linuxhoz.", max annyi, hogy ertek az X,Y,Z disztribuciokban szallitott szoftverekhez.

Ebben a szakmában nincs olyan, hogy értek XY-hoz. Ha értettél a Windows NT-hez, azt a hajadra kenhetted amikor kijött a Win2K. Ha papírod volt Win Server 2003-ról, vagy Exchange 2000-ről, azt a hajadra kenhetted Win 2008 és Exchange 2007 megjelenésekor.

Ezen tudások megszerzése is költséges.

--
trey @ gépház

Persze, ezt tudom is, hogy így van. Inkább az az érdekes itt, hogy egy termék esetén a már megszerzett tudásod az új verziókban használhatómarad (azaz az egyes HP termékek visszafelé mennyire kompatibilisek)? Mert igazán akkor drága a tudás megszerzése, ha a régi tudásod tényleg 0-t ér most. Mert akkor nem csak újat tanulsz, hanem újratanulsz.

Jjjja. A C99 API nem változik. Helyette kapsz C11-et. C++-nál persze sokkal gyorsabbak a váltások (1998, 2003, 2007, 2011, és persze mindegyik compiler esetében különböző részhalmaz van támogatva, rilízenként változva). A Java API meg csak azért nem változik, mert az egész Java nem változik, mivel az Oracle le se szarja :) Gyakorlatilag a Java 6 óta, azaz 6 éve semmi nem történt, újabb hírek szerint pedig a Java 8-cal sem fog jönni semmi említésre méltó újítás. Szóval ez nem a programozás érdeme, hanem a Java sara inkább.

A nem változás alatt azt értsd, hogy az 5-10 éve megírt kódok ugyanolyan vígan fordulnak és futnak a legfrisebb JDK/JRE-vel, mint 5-10 éve. Ugyanígy a C99-re. Míg üzemeltetés esetén ha megírtál egy üzemeltető szkriptet, ami ipconfigot használt, egy olyan disztróban, ahol ez deprecated lett, baszhatod a dolgot. Javaban is rengeteg deprecated dolog van (pl. java.net.URL meg sok-sok metódushívás), de a kompatibilitás megvan. Attól, hogy valami deprecated, még nem jelenti azt, hogy gond nélkül eltávolítható. Eclipse API esetén is csak most lett visszafelé nem kompatibilis az API, a 4-es főverzióval, az alverziók visszafelé kompatibilisek. Ebből persze sok probléma akad (pl. SWT stílus konstansok enumok helyett), de együtt lehet vele élni.

Érdekes, nálunk van rengeteg régi fos program, ami csak 6-os javával megy, 7-essel nem.

Amúgy meg egy OS-sel szállított util-ok gyűjteményét nem sok értelme van API-hoz hasonlítani. Ennyi erővel mondhatjuk, hogy persze, az a script 20 év múlva is menni fog... a 20 éve kiadott OS-en. A C99-ednél is ezt mondod lényegében. A kód megy mindaddig, amíg C99 compilert használsz. De nem tovább.

Van aki használ patchet:

"This program is obsolete. For replacement check ip neighbor"

"This program is obsolete!

For replacement check ip addr and ip link.

For statistics use ip -s link."

"Ifconfig uses obsolete kernel interface.

It uses the ioctl access method to get the full address information, which limits hardware addresses to 8 bytes.
Since an Infiniband address is 20 bytes, only the first 8 bytes of Infiniband address are displayed."

A kérdés az, hogy miért nem használja mindenki (disztribútorok).

--
trey @ gépház

Ezt kérdem én is. A kérdező miért nem javítja? Akinek szüksége van rá, miért nem javítja, javíttatja? A szerzője befejezte. Született alternatíva, az emberek egy része már azt használja. Akinek egy elavult, magára hagyott cucc kell, az javítsa ki. Már ha tudja és egyáltalán lehetséges, de tartok tőle, hogy nem lenne egyszerű.

--
trey @ gépház

Ha igaz lenne amit mondasz, akkor a nyílt forrású fejlesztési modell már rég csak egy rég elfelejtett fejezet lenne a szoftverfejlesztés történetében. De mint tudjuk, ez nincs így, sőt, egyre többen látják be, hogy ez egy életképes és működő valami.

--
trey @ gépház

Ha számodra az már bazár fejlesztés, hogy úgy teszünk, mintha a hobbigeekek fejlesztenének, miközben kb. lófasz közük van az egészhez, akkor igazad van.

Az én olvasatomban az nem bazár fejlesztés, ha mindent a pénzes jócég irányít, gyakran ki se adja a kódot rilíz előtt (Android, helló?), de néha azért nagy kegyesen beolvaszt egy párszáz soros patch-et külsőstől is. Most így valamiért eszembe jutott Con Kolivas vs. Ingo Molnár ütemezős szarrágása is. Véletlenül Ingo nyert.

Igen, a Linux kernel, aminek 90%-át jócégek írják. Aminek az összes manager-e (Linus, GKH, Morton, akárki) jócégek alkalmazásában áll. Kiváló példa valóban. Főleg, hogy a könyvet 15 éve írták (ergo a megfigyelések még korábbról származnak). Rendkívül releváns manapság.

Tehát neked a bazári modell egyelő azzal, hogy csóró, állástalan emberek fejlesztenek? Hol van ilyen leírva a könyvben? Én ugyan 10 éve olvastam, de nekem ilyesmi nem rémlik belőle.

Nekem úgy rémlik, hogy a bazári modell másról szól, nem arról, hogy a fejlesztőknek van-e munkájuk, fizetésük és ha van, az honnan jön. Javíts ki, ha tévedek.

--
trey @ gépház

Miért akarnék én neked ingyen rendszert üzemeltetni? Ingyen programozni se akartam. De engem nem zavar, ha valaki ingyen akar programozni. Ez szemmel láthatóan rád nem igaz, hiszen évek óta próbálsz kapálózni ellene.

Ráadásul még mindig tévúton jársz, a bazári modellnek nincs semmi köze a finanszírozáshoz.

--
trey @ gépház

"Miért akarnék én neked ingyen rendszert üzemeltetni? "

Te beszéltél itt üzletről.

"hiszen évek óta próbálsz kapálózni ellene."

Szerintem te picit el vagy tévedve. A nyílt forráskóddal semmi bajom. Amivel bajom van, az az, hogy egyesek azt képzelik, hogy a nyílt forráskód (meg a szabad szoftver) együtt jár azzal, hogy ingyen mindent és kb. ennyire is értékelik az sw fejlesztők munkáját.

"De engem nem zavar, ha valaki ingyen akar programozni."

Mint a Red Hat, Oracle, Google, stb. alkalmazottak? Attól, hogy máshonnan jön be a pénz, még nem ingyenmunka. És végképp nem bazári modell.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

No azért az esetek 99,999%-ában az ifconfig megfelel mindenkinek. Szerintem a leggyakoribb eset, mikor nem jó a korlátoltsága, ha egy hekker spéci hálózati beállításokat csinál a gépen (másodlagos IP címek, másodlagos routing táblák, NAT-ok stb.), azt a régi eszközparkkal lényegében nem lehet észrevenni. De tegyük a szívünkre a kezünket, ki az, aki napi (de akár havi) szinten ellenőrzi a hálózati beállításait? Egy évtized kellett hozzá, hogy rájöjjek, informatika biztonság pedig nincs :D

Én akkor szoktam le az ifconfig használatáról, amikor egy RHEL cluster alatt kellett debuggolni. Sokáig nagyon bután néztem ki a fejemből, hogy hol van az az interfész, amin megy a forgalom (a RHEL cluster szoftvere már ip-vel húzza fel az interfészt, nem ifconfiggal - legalábbis 5-től felfele).

Szóval bele lehet ebbe futni néha, nem csak a széthekkelt spéci hálózatok sajátja.

Attól, hogy a back end obsolete, lehetett volna olyan front endet csinálni, ami kompatibilis: ugyanúgy paraméterezhető és ugyanazt írja ki. Legalábbis az utóbbit simán megtehetné az ip parancs, ahogy elnézem.
Innen kezdve az ifconfig-ot szép csendben egy wrapperre kellene csak cserélni.

Ezt hívják kompatibilitásnak, és a nagy refaktoráló zsenik imádnak róla elfeledkezni. Pedig rengeteg élesben használt scriptben ott lehet a régi, és azokat most majd mind át kell írni, ami gáz.

Tiszteld az installed base-t, és hosszú életű leszel e Földön...

Látszik az "átgondolt" fejlesztés.

Lássuk csak milyen parancsok szükségesek, hogy a network-ot konfigolni tudjuk linux alatt:

vconfig -> vlanokhoz (újabb "ip" mondjuk ezt tudja)
iwconfig,iwlist,iwspy -> wireless-hez (deprecated, helyette van az iw parancs)
iw -> újabb wireless stack-hez
brctl -> bridge konfighoz
ifenslave ( és még kernel modul paraméterezés LOL) -> bonding, lacp
tunctl -> tun/tap interfészekhez (újabb "ip" ezt is tudja)
route -> "ip"-vel helyettesíthető az összes funkciója
ifconfig -> "ip"-vel helyettesíthető

Ehhez képest mondjuk *BSD-ken mindezt az ifconfig+route kombó tudja.

Ha a forgalom szabályzást is a hálózathoz számoljuk (márpedig szerintem ide kellene), akkor még:
tc

És ha a NAT-okat is, akkor:
iptables | iptables-save | iptables-restore | iptables-apply
ip6tables | ip6tables-save | ip6tables-restore | ip6tables-apply

De ezek a csomagszűrő pisztergálók legalább egymásra hasonlítanak. Az ip és a tc paraméterezése igencsak titokzatos tud lenni. Mint a másik kedvencem, az openssl :D

Na ezt a save-restore-t is csak egyszer használtam, amikor kipróbáltam annó. :) Én mindig megírom a szabályaim rögtön egy fájlba amit aztán induláskor automazikusan lefuttatok. :) Ezért aztán a csomagszűrés nálam mindig a rácsoslinzer, felkiáltójel per bin per bash-al kezdődik. :)

Rózsár Gábor (muszashi)
http://sites.google.com/site/gaborrozsar/

Tipikus ontokonloves, amikor valamiert egy terhelt gepen kell ujratolteni a tuzfalat, es meg eppen nincs engedelyezve az ssh mondjuk. Ha pont azelott megall hosszabb idore a vegrehajtas, lehet, hogy ki is zartad magad :-)
--

Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal 

No most már kíváncsi voltam és megnéztem, pl ott 465 sor van a fájlban, de mivel minden kommentelek hogy miért került bele így ez rögtön kevesebb, plusz az elején a változókat deklarálok, stb. Szóval ez max 200 szabályra tippelem.

...és azt mondja a grep, hogy 158 sorra stimmel. Hmmm nem is gondoltam volna.

Rózsár Gábor (muszashi)
http://sites.google.com/site/gaborrozsar/

A sebesség majdnem teljesen lényegtelen, nem megy ez annyira gyakran le. Az a nagy baj, hogy az egyesével beszúrkált szabályok inkonzisztensek mindaddig, amíg _minden_ szabályt be nem töltöttél. Ekkor az egyetlen helyes megfejtés, ha az INPUT és a FORWARD elejére betolsz egy -j DROP-ot, és miután minden szabályt betöltöttél, akkor kiveszed. Ezzel szemben a restore elemi műveletként tölti be az egész csomagszűrőt. Ettől persze még praktikus a boot folyamatba -a hálózat elé- betenni egy -P DROP-ot, hogy addig se eresszen át semmit a doboz.

Bridge konfigot is támogatni fogja elvileg az iproute2:

Lásd:
http://www.kernel.org/pub/linux/utils/net/iproute2/iproute2-3.5.0.tar.gz
bridge könyvtár

Get/set/delete bridge with netlink
Authors: Stephen Hemminger
br utility, 0.0


fprintf(stderr,
"Usage: br [ OPTIONS ] OBJECT { COMMAND | help }\n"
"where OBJECT := { fdb | monitor }\n"
" OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails]\n" );
exit(-1);

Gépelni nem nem kell többet, de TAB-ra nem egészíti ki (megbizonyosodsz róla, hogy nem félreütöttél és nem hülyeséget írtál be) és "?"-el pedig azonnal látod, milyen lehetőségeid vannak még.
Tudom, nagyon buta és korlátozott a routerek CLI-je, de ez a feature tényleg priceless! :)
Én meg már megszoktam, nna.

tudom hogy obsolate az ifconfig, mégis azt használom :\

---------------------------------------------------
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"

ifconfig decrepeated ?
a linugz megerett a pusztulasra.

Mindig az ifconfig az első, ha ilyen jellegű dolgokat kell nézegetni/állítgatni.
Találkoztam már az ip paranccsal, de nem emlékeztem, milyen információkat kapok az

ip addr show

begépelésével. Ezért kipróbáltam!
Még azt is elképzelhetőnek tartottam, hogy csak ip-t kapok vissza...
Lehet hogy nálam van a hiba, de ip-t sehol sem látok.

LOL eddig nem tudtam erről az ip parancsról mostantól ezt fogom használni. :)

Tobb interface-s szerverek miatt szoktam ra 'ip ad'-ra, mert ifconfig eredmeny-t hogy atlassam mindig gorgetni kellett.
Es/vagy mert pl 'ip ro get' nagyon hasznos tud lenni.

nem tudok róla, hogy linux alatt használtam volna ilyet :)

Van legalább egy tucat hasonló jellegű dolog. Pl. netcat helyett ss, etc.

ifconfig-ot használtam eddig, viszont az ip-re átszokom. Jó szavazás!
Érdekesség: ifconfig usermódban nem mutata semmit a kártyák beállításáról, sőt ifconfig nem is érhető el a user számára. Viszont az ip-vel könnyen ki lehet deríteni a kártya beállításáról szinte mindent.

"sőt ifconfig nem is érhető el a user számára."
Francokat nem. Csak azért, mert nincs benne a PATH-ban, nem jelenti azt, hogy nem is elérhető!

$ id -u
1101
$ ifconfig
-bash: ifconfig: command not found
$ /sbin/ifconfig
eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx
...

Az ip parancs szintén:

$ ip
-bash: ip: command not found
$ /sbin/ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
...

A szavazáson 92:8-ra nyert az ifconfig. Vajon miért?

Az ifconfig leggyakoribb használatához (hogy megnézzük, mi a helyzet) nem kell semmilyen paraméterezés. Próbáljuk meg ugyanezt az ip-vel. Egy nem értelmezhető help-et kapunk. No jó, nézzük inkább a mant. A man 1500 soros, aminek az első 200 sorából nem lehet megérteni az ip elemi használatát. Ennyire überfasza az ip.

--
ulysses.co.hu

Én nem használom egyiket sem, hanem rábízom a disztróra a hálózat beállítását :) Az ip címem kiderítésére, pedig az ifconfigot használom. Nagy gáz?

Ez azért vicces, mert Windowson általában ifconfiggal próbálkozom elsőre, aztán rájövök, hogy az ipconfig lesz, Linuxon meg emiatt sosem tudom, hogy most ip vagy if, úgyhogy amelyik előbb beugrik vagy amelyik előbb jön tabra, historyból. Szóval olyan fele-fele.
----
India delenda est.
Hülye pelikán

Mielott valakiben nagy lelkitorest okozna egy kovetkozo szavazasaon az iwconfig is deprecated (lesz?).
iw -az uj modi.

Amit nem lehet megirni assemblyben, azt nem lehet megirni.

WPA-PSK es tarsainak kezelesenek egy resze userspace -ben tortenik rendszerint a wpa_supplicant segitsegevel.
Mit szeretnel ?
- kernelbe beleteni azt a sok "furcsa" dolgot amit supplicant tud ?
- az iw inditsa / managelje az userspace processt ?

Sokkal valoszinubb, hogy networkmanger es tarsait fogod tudni ugy vezerlni egy parancsal, hogy neked jo legyen azok meg lerendezik a dolgokat.

Amit nem lehet megirni assemblyben, azt nem lehet megirni.

Hallott már valaki olyanról, hogy wlanconfig?

Valaki erről beszélt a villamoson éppen...

---
--- A gond akkor van, ha látszólag minden működik. ---
---

~# ip addr show
-bash: ip: command not found

Felváltva használom őket. Ha tudom, hogy nincs sok néznivaló, akkor ifconfig mert egyszerűbb beütni :)

Az ifconfig kiírta a Rx/Tx byte számot. Az ip addr show nem írja. Azt mivel illik lekérdezni eme modern időkben ?