IT-Academy Logo
Sign Up Login Help
Home - Betriebssysteme - Linux - Anwendungssoftware - Das Kommando ifconfig



Das Kommando ifconfig

es werden grundlagen der einrichtung des netzwerkes werden anhand von ifconfig vermittelt. erwaehung von ifup/ifdown und netstat und kurzerklaerung von DHCP.


Autor: Franz Schaefer (mond)
Datum: 23-01-2002, 19:38:28
Referenzen: man ifconfig
ifconfig --help
man ifup
man interfaces
man route
man netstat
Schwierigkeit: Fortgeschrittene
Ansichten: 13427x
Rating: 6 (2x bewertet)

Hinweis:

Für den hier dargestellte Inhalt ist nicht der Betreiber der Plattform, sondern der jeweilige Autor verantwortlich.
Falls Sie Missbrauch vermuten, bitten wir Sie, uns unter missbrauch@it-academy.cc zu kontaktieren.

[Druckansicht] [Als E-Mail senden] [Kommentar verfassen]



ist das neue unix erst mal aufgesetzt will man natuerlich gleich mal ins
netz. die setup tools der meisten distributionen fragen beim installieren
schon mal welche art von netzverbindung man hat und richtet die scripts
die beim starten des rechners das neztwerk konfigurieren sollen
entsprechend ein. falls man alles nicht ganz so glatt geht sollte man aber
in der lage sein sein netzwerk "haendisch" einzurichten.

ich erklaere hier die befehle aus linux sicht. bei anderen unixen sind sie
aber sehr aehnlich..

ifconfig

ohne parameter zeigt die gerade configurierten netzwerk interface an.
(alternativ: netstat -ni)

ein netzwerk interface ist dabei i.a. ein hardware geraet dass netzwerk
packet senden und empfangen kann. z.b. eine ethernet karte. linux nennt
die erste ethernet karten eth0 (freebsd: xl0). die zweite dann eth1 usw..

ifconfig eth0

zeigt die daten der ersten netzwerkkarte.
das koennte z.b. so aussehen:

eth0 Link encap:Ethernet HWaddr 00:30:4F:0B:5C:75
inet addr:10.216.6.2 Bcast:10.216.6.31 Mask:255.255.255.224
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:37311995 errors:0 dropped:0 overruns:0 frame:0
TX packets:57894277 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:5 Base address:0xe000

obige ausgabe besagt dass auf dieser netzwerkarte schon 57 millionen
packte gesendet (TX) und 58 millionen empfangen (RX) wurden. packte werden
mit einer maximalen groesse (MTU) von 1500 bytes gesendet. die "hardware
addresse" (auch MAC addresse genannt) die jede netzwerkarte in einem
netzwerk eindeutig identifiziert ware hier: 00:30:4F:0B:5C:75 )

die eigene IP addresse des rechners: 10.216.6.2 die netmask von
255.255.255.224 besagt dass auf diesem netzwerkkabel maximal 32 computer
(genauer eigentlich maximal 30) haengen koennen mit den addressen
10.216.6.1 bis 10.216.6.30 )

ist die karte noch nicht eingerichtet oder will man die einstellungen
aendern so kann man das mit dem ifconfig befehl machen (VORSICHT: nicht
remote ausprobieren sonder nur wenn man vor dem rechner sitzt auf dem man
das macht. sonst saegt man sich eventuell den ast ab auf dem man sitzt):
z.b:

ifconfig eth0 10.22.33.44 netmask 255.255.255.0 broadcast 10.22.33.255

wuerde der karte die ip addresse 10.22.33.44 aus dem netz 10.22.33.xxx
zuweisen. (die broadcast addresse ist immer die lezte addresse aus dem
netz) die netmask gibt an wie gross dieses netz ist (in diesem fall ein
ganzes class C netzwerk). hier eine kurze tabelle von netmasken, der
anzahl der "bits" der IP addresse die zum netzwerk zaehlen und die zahl
der addessen die im netz sind:

CIDR netmask bits in netzaddresse freie bits zahl der rechner

/32 255.255.255.255 32 0 2^0 = 1
/31 255.255.255.254 31 1 2^1 = 2
/30 255.255.255.252 30 2 2^2 = 4
/29 255.255.255.248 29 3 2^3 = 8
/28 255.255.255.240 28 4 2^4 = 16
/27 255.255.255.224 27 5 2^5 = 32
/26 255.255.255.192 26 6 2^6 = 64
/25 255.255.255.128 25 7 2^7 = 128
/24 255.255.255.0 24 8 2^8 = 256 (class C)
/23 255.255.254.0 23 9 2^9 = 512

....

/16 255.255.0.0 16 16 2^16 = 65536 (class B)
/8 255.0.0.0 8 24 2^24 = 16777216 (class A)

kennt man seine netzaddresse nicht so erfragt man diese am besten bei
seinem netzwerkadministrator.

der computer erwartet alle computer die im selben netz sind direkt auf
diesem interface bzw dem damit verbunden netzwerkkabel zu finden... nach
der eingabe eines ifconfig befehls sollte man daher all diese rechner mit
ping schon erreichen koennen. (nach dem:

ifconfig eth0 10.22.33.44 netmask 255.255.255.0 broadcast 10.22.33.255

befehl sollte man also alle computer addressen von 10.22.33.1 bis
10.22.33.254 pingen koennen. sofern diese auf dem netzwerksegment an dem
usnere netzwerkkarte angeschlossen ist existieren und eingeschalten
sind... pingt man die broadcast addresse (in diesem falle 10.22.33.255 )
sollten alle computer auf das ping antworten)

funktioniert der ifconfig befehl gar nicht und es kommt eine fehlermeldung
in der art "Device not found". so hat der computer die netzwerkarte nicht
erkannt. in diesem falle muss man entweder einen "modprobe" befehl
anwenden oder eventuell einen neuen kernel compilieren... wie man das
macht lernen wir demnaechst.

funktioniert das ping nicht dann sollte man kontrolieren ob die addresse
richtig ist und ob die karte ueberhaupt packete aus dem netz "sehen" kann.
man merkt das entweder in dem man erneut ifconfig aufruft und schaut ob
sich der werte der bei "RX packets:" (die zahl der empfangen packete)
steht von 0 weg erhoeht hat.. oder man benutzt das "tcpdump" kommando um
direkt nachzusehen was sich auf diesem netzwerkabel so tut:

tcpdump -ni eth0

zeigt alle packte an die am eth0 rausgehen oder reinkommen. ist alles was
man dort sieht ausgehende "arp" packte die der eigene rechner schickt dann
ist das netzwerkabel nicht angesteckt oder falsch ausgekreuzt oder ein
aehnliches problem. i.a. haben die netzwerkarten auf der rueckseite kleine
LED anzeigen mit denen man sehen kann ob die karte richtig angesteckt
ist.. (ist man remote via ssh eingelogt und man will den tcpdump befehl
benutzen sollte man darauf achten dass nicht die von tcpdump erzeugten
ausgaben neue packte produzieren die dann wieder neue ausgaben produzieren
die dann wieder neue packte produzieren... in diesem falle empfiehlt sich
z.b.:

tcpdump -ni eth0 not port ssh

das zeigt die packte auf der ssh verbindung nicht an)

wo der computer andere rechner findet die nicht direkt in diesem netzwerk
segment liegen sagt man ihm mit dem "route" befehl) den lernen wir
demnaechste genauer. einzig die "default route" lernen wir heute. das ist
der router der alle packete weiterleitet fuer die wir sonst keine
information haben. im obigen beispiel koennte das z.b.

route add default gw 10.22.33.1

sein. (es ist eine verbreitete konvention dass der gateway router die
erste ungerade addresse aus dem netz bekommt - muss aber nicht so sein)

ifconfig ist bei jeder linux distribution standardmaessig dabei und
erlaubt es die einstellungen der netzwerkinterface einzusehen und zu
veraendern. zum teil verwenden aber neuere distributionen die befehle:

"ifup" und "ifdown"

ifup und ifdown entnehmen die einstellungen wie die netzwerkinterface zu
konfiguriren sind aus dem file /etc/network/interfaces

stehen dort die richtigen werte fuer z.b. eth0 drinnen so kann man die
das eth0 mit dem befehl:

ifup eth0

in betrieb nehemn. ebenso wieder entfernen:

ifdown eth0

weiters erlaubt:

ifup -a

alle in /etc/network/interfaces

einzurichten...

wie das genauer mit dem "route" funktioniert und wie man dialup
einwahlverbindungen (PPP) netzwerkzugaenge einrichtet lernen wir demnaechst.

in manchen netzwerkgen laueft ein server der computern automatisch ihre IP
addresse zuteilen kann. das nennt man dann "DHCP". damit das im linux
funktioniert kann man wahlweise eines der beiden programme "pump" oder
"dhcpcd" verwenden.

befindet man sicha auf einem DHCP netzwerk so fuerht die eingabe von z.b:

pump

dazu dass man eine addresse zugwiesen bekommt. (die kann man danach -
dauert i.a. ein paar sekunden - mit dem ifconfig befehl wieder ganz normal
ansehen...)

EXERCISES:

sieh dir mit ifconfig und netstat -ni die konfiguration deiner
netzwerkarte an.

schau dir die ausgabe von tcpdump -ni an. (vieles da wird noch
verwirrend sein aber das macht momentan nichts..)

versuche (NUR IN ABSPRACHE MIT DEINEM NETZWERK ADMINISTRATOR!) dir eine
andere netzwerkaddresse zu geben. (wenn du zwei private rechner hast
haenge die rechner direkt ueber ein ausgekrueztes kabel oder einen
kleinen hub zusammen und konfiguriere eine auf 192.168.123.1 und die
andere auf 192.168.123.2 und schau ob du die computer gegenseitig pingen
kannst)

informiere dich wo deine distribution ihre netzwerk einstellungen
speichert die beim starten geladen werden (debian:
/etc/network/interfaces ).

dein netzwerkadmin sagt dir du seist auf einem /27 netzwerk. was
bedeutet das? wie lautet die netmask dazu? wieviele computer haben in
diesem netzwerksegment maximal platz?

welche netmask hast ein "class C" netz?

dein netzwerkadmin sagt dir dass die IP addressen per DHCP vergeben
werden. mit welchen programmen bekommst du diese addresse?

mit welchem befehl setzte du den "default gateway" ?

_______________________________________________
CD ist ein service von SILVER SERVER
der inhalt unterliegt der GFDL
_______________________________________________



paedubucher
Professonial
Beitrag vom:
05-06-2006, 16:27:17

WLAN

Wer Wireless LAN benutzt, der sollte sich mal den Befehl "iwconfig" anschauen.

-----------------------------------------------------


[back to top]



Userdaten
User nicht eingeloggt

Gesamtranking
Werbung
Datenbankstand
Autoren:04508
Artikel:00815
Glossar:04116
News:13565
Userbeiträge:16552
Queueeinträge:06243
News Umfrage
Ihre Anforderungen an ein Online-Zeiterfassungs-Produkt?
Mobile Nutzung möglich (Ipone, Android)
Externe API Schnittstelle/Plugins dritter
Zeiterfassung meiner Mitarbeiter
Exportieren in CSV/XLS
Siehe Kommentar



[Results] | [Archiv] Votes: 1144
Comments: 0