LX-SVS-INFO-net-redhat
updated sep/13/10 22:16
Netwerkconfiguratie Manueel: RedHat5
De ip-netwerkconfiguratie van een computer (of host) bestaat uit de volgende gedeelten:
-
hostname
-
ip-adres/netmask
-
default gateway
-
dns-configuratie
Je kan deze gegevens aanpassen via grafische tools, maar het gaat beter, sneller en correcter via de shell aan de hand van de juiste configuratiefiles. Bovendien ben je dan niet meer afhankelijk van eventuele wijzigingen in de werking van sommige grafische tools.
-
NetworkManager en avahi-daemon
Vooraleer je manueel aan de slag kan moet je bij veel distributies de networkmanager daemon en de avahi daemon uitschakelen, en soms zelfs de networking services inschakelen.
De networkmanager is heel vervelend op servers: je moet vaak inloggen vooraleer je netwerk aktief wordt. Servers draaien bovendien vaak niet in grafische mode.
Als je daarentegen een laptop met een wireless kaart gebruikt zijn beide daemons eigenlijk onontbeerlijk.
In Red Hat based distributies doe je dit als volgt:
Zoek in zowel /etc/rc.d/rc3.d als /etc/rc.d/rc5.d naar network-manager en avahi daemon, en verwijder hun Sxy links.
$ ls -l /etc/rc.d/rc5.d/S*
lrwxrwxrwx 1 root root 23 2009-09-16 10:01 S00microcode_ctl -> ../init.d/microcode_ctl
lrwxrwxrwx 1 root root 22 2009-09-16 10:00 S02lvm2-monitor -> ../init.d/lvm2-monitor
lrwxrwxrwx 1 root root 25 2009-09-16 10:02 S04readahead_early -> ../init.d/readahead_early
lrwxrwxrwx 1 root root 15 2009-09-16 10:02 S05kudzu -> ../init.d/kudzu
lrwxrwxrwx 1 root root 18 2009-09-16 09:56 S06cpuspeed -> ../init.d/cpuspeed
lrwxrwxrwx 1 root root 19 2009-09-16 09:55 S08ip6tables -> ../init.d/ip6tables
lrwxrwxrwx 1 root root 18 2009-09-16 09:55 S08iptables -> ../init.d/iptables
lrwxrwxrwx 1 root root 14 2009-09-16 10:01 S09isdn -> ../init.d/isdn
lrwxrwxrwx 1 root root 17 2009-09-16 09:59 S10network -> ../init.d/network
lrwxrwxrwx 1 root root 16 2009-09-16 10:00 S11auditd -> ../init.d/auditd
lrwxrwxrwx 1 root root 21 2009-09-16 10:00 S12restorecond -> ../init.d/restorecond
lrwxrwxrwx 1 root root 16 2009-09-16 09:59 S12syslog -> ../init.d/syslog
lrwxrwxrwx 1 root root 20 2009-09-16 10:01 S13irqbalance -> ../init.d/irqbalance
lrwxrwxrwx 1 root root 18 2009-09-16 09:59 S13mcstrans -> ../init.d/mcstrans
lrwxrwxrwx 1 root root 17 2009-09-16 10:00 S13portmap -> ../init.d/portmap
lrwxrwxrwx 1 root root 17 2009-09-16 10:01 S14nfslock -> ../init.d/nfslock
lrwxrwxrwx 1 root root 19 2009-09-16 10:01 S15mdmonitor -> ../init.d/mdmonitor
lrwxrwxrwx 1 root root 19 2009-09-16 10:01 S18rpcidmapd -> ../init.d/rpcidmapd
lrwxrwxrwx 1 root root 17 2009-09-16 10:01 S19rpcgssd -> ../init.d/rpcgssd
lrwxrwxrwx 1 root root 20 2009-09-16 09:57 S22messagebus -> ../init.d/messagebus
lrwxrwxrwx 1 root root 19 2009-09-16 10:01 S25bluetooth -> ../init.d/bluetooth
lrwxrwxrwx 1 root root 15 2009-09-16 09:59 S25netfs -> ../init.d/netfs
lrwxrwxrwx 1 root root 15 2009-09-16 10:02 S25pcscd -> ../init.d/pcscd
lrwxrwxrwx 1 root root 14 2009-09-16 10:03 S26apmd -> ../init.d/apmd
lrwxrwxrwx 1 root root 14 2009-09-16 10:01 S26hidd -> ../init.d/hidd
lrwxrwxrwx 1 root root 16 2009-09-16 10:01 S28autofs -> ../init.d/autofs
lrwxrwxrwx 1 root root 15 2009-09-16 10:01 S44acpid -> ../init.d/acpid
lrwxrwxrwx 1 root root 15 2009-09-16 10:01 S50hplip -> ../init.d/hplip
lrwxrwxrwx 1 root root 14 2009-09-16 10:01 S55sshd -> ../init.d/sshd
lrwxrwxrwx 1 root root 14 2009-09-16 09:59 S56cups -> ../init.d/cups
lrwxrwxrwx 1 root root 14 2009-09-17 10:22 S58ntpd -> ../init.d/ntpd
lrwxrwxrwx 1 root root 18 2009-09-16 09:59 S80sendmail -> ../init.d/sendmail
lrwxrwxrwx 1 root root 13 2009-09-16 09:55 S85gpm -> ../init.d/gpm
lrwxrwxrwx 1 root root 15 2009-09-16 09:59 S90crond -> ../init.d/crond
lrwxrwxrwx 1 root root 13 2009-09-16 10:03 S90xfs -> ../init.d/xfs
lrwxrwxrwx 1 root root 17 2009-09-16 09:56 S95anacron -> ../init.d/anacron
lrwxrwxrwx 1 root root 13 2009-09-16 09:59 S95atd -> ../init.d/atd
lrwxrwxrwx 1 root root 25 2009-09-16 10:02 S96readahead_later -> ../init.d/readahead_later
lrwxrwxrwx 1 root root 22 2009-09-16 10:01 S97yum-updatesd -> ../init.d/yum-updatesd
lrwxrwxrwx 1 root root 22 2009-09-16 09:59 S98avahi-daemon -> ../init.d/avahi-daemon
lrwxrwxrwx 1 root root 19 2009-09-16 10:02 S98haldaemon -> ../init.d/haldaemon
lrwxrwxrwx 1 root root 19 2009-09-16 10:02 S99firstboot -> ../init.d/firstboot
lrwxrwxrwx 1 root root 11 2009-09-16 09:59 S99local -> ../rc.local
lrwxrwxrwx 1 root root 16 2009-09-16 10:03 S99smartd -> ../init.d/smartd
# rm -v /etc/rc?.d/S??avahi-daemon
rm: remove symbolic link `/etc/rc3.d/S98avahi-daemon'? y
removed etc/rc3.d/S98avahi-daemon'
rm: remove symbolic link `/etc/rc5.d/S98avahi-daemon'? y
removed etc/rc5.d/S98avahi-daemon'
In ons geval is NetworkManager niet actief.
# rm -v /etc/rc?.d/S??NetworkManager
rm: cannot lstat `/etc/rc?.d/S??NetworkManager': No such file or directory
Stop nu de NetworkManager en de avahi-daemon (let op de hoofdletters):
# /etc/init.d/avahi-daemon stop
Shutting down Avahi daemon: [ OK ]
# /etc/init.d/NetworkManager stop
Stopping NetworkManager daemon: [FAILED]
In dit voorbeeld is NetworkManager niet actief.
Je had je computer ook gewoon kunnen herstarten om de wijzigingen te activeren.
Zodra deze wijzigingen hebben plaatsgevonden kan je de ip-configuratie aanvatten.
-
hostname
Je RedHat5 server houdt zijn algemene netwerkconfiguratie bij in de file
/etc/sysconfig/network
die ziet er als volgt uit:
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=pc2202.linux800.be
|
We kunnen de hostname hier indien nodig wijzigen.
In het bestand /etc/hosts staan de netwerknamen van de computer. Ook de namen die verwijzen naar de local loopback (127.0.0.1). Een computer kan meerdere aliasnamen hebben in de hosts file, maar die zijn niet van buitenuit zichtbaar. Na aanpassing van de /etc/hosts kan je de naam (namen) onmiddellijk gebruiken in al je lokale netwerkcommando's.
$ cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost pc2202 tartarus
127.0.1.1 pc2202.linux800.be pc2202
# The following lines are desirable for IPv6 capable hosts
::1 localhost6.localdomain6 localhost6
-
ip-address
Je centos-computer houdt zijn ethernet devices bij in aparte files in de directory
/etc/sysconfig/networking/devices
Elke netwerkkaart heeft een configuratie file zoals:
/etc/sysconfig/network-scripts/ifcfg-eth0
static:
# 3Com Corporation 3c905 100BaseTX [Boomerang]
DEVICE=eth0
BOOTPROTO=none
BROADCAST=172.16.255.255
HWADDR=00:60:08:56:B6:BF
IPADDR=172.16.31.102
NETMASK=255.255.0.0
NETWORK=172.16.0.0
ONBOOT=yes
GATEWAY=172.16.0.2
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
/etc/sysconfig/network-scripts/ifcfg-eth1
dhcp:
# 3Com Corporation 3c905 100BaseTX [Boomerang]
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=00:60:08:56:B6:BF
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
Je kan de file ifcfg-eth0 kopieren naar ifcfg-eth0:1 om een logisch device te creëren. Zodra de file is aangepast en gesaved met de juiste configuratie kan het netwerk heropgestart worden met het commando:
# /etc/init.d/network restart
je kan dan controleren of alles goed staat met:
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:1c:c0:4a:24:18
inet addr:172.16.31.102 Bcast:172.16.255.255 Mask:255.255.0.0
inet6 addr: fe80::21c:c0ff:fe4a:2418/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:30727145 errors:0 dropped:0 overruns:0 frame:0
TX packets:7157060 errors:0 dropped:4 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3686717617 (3.4 GiB) TX bytes:757257459 (722.1 MiB)
Interrupt:19 Base address:0x2000
eth1 Link encap:Ethernet HWaddr 00:d0:b7:80:da:f0
inet addr:10.0.1.1 Bcast:10.0.1.255 Mask:255.255.255.0
inet6 addr: fe80::2d0:b7ff:fe80:daf0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:7136163 errors:0 dropped:0 overruns:0 frame:0
TX packets:29882756 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:682014735 (650.4 MiB) TX bytes:3567221274 (3.3 GiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:142 errors:0 dropped:0 overruns:0 frame:0
TX packets:142 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:10398 (10.1 KiB) TX bytes:10398 (10.1 KiB)
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.16.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
0.0.0.0 172.16.0.2 0.0.0.0 UG 0 0 0 eth0
-
dns-configuratie
de configuratie van de domain name server(s) gebeurt in de file /etc/resolv.conf
die kan er als volgt uitzien:
search linux800.be
domain linux800.be
nameserver 172.16.31.101
Het veld nameserver bevat de dns server. Je kan er twee of meer invoeren.
Als je een search domein invult wordt dit domein automatisch toegevoegd aan verkorte host-namen zodat in dit voorbeeld
$ ping pc3105
PING pc3105 (172.16.31.5) 56(84) bytes of data.
64 bytes from localhost (172.16.31.5): icmp_seq=1 ttl=64 time=0.035 ms
...
eigenlijk verwijst naar pc3105.linux800.be
De door u aangepaste dns configuratie is onmiddellijk aktief na opslaan van het bestand.
Je kan ze nog testen met:
# dig
; <<>> DiG 9.7.0-P1 <<>>
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41682
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;. IN NS
;; ANSWER SECTION:
. 66488 IN NS k.root-servers.net.
. 66488 IN NS l.root-servers.net.
. 66488 IN NS m.root-servers.net.
. 66488 IN NS a.root-servers.net.
. 66488 IN NS b.root-servers.net.
. 66488 IN NS c.root-servers.net.
. 66488 IN NS d.root-servers.net.
. 66488 IN NS e.root-servers.net.
. 66488 IN NS f.root-servers.net.
. 66488 IN NS g.root-servers.net.
. 66488 IN NS h.root-servers.net.
. 66488 IN NS i.root-servers.net.
. 66488 IN NS j.root-servers.net.
;; Query time: 12 msec
;; SERVER: 172.16.31.101#53(172.16.31.101)
;; WHEN: Mon Sep 13 22:40:34 2010
;; MSG SIZE rcvd: 228
-
tijdelijke configuratie
Om allerlei redenen kan het nuttig zijn met een tijdelijke configuratie te werken. Die blijft dan draaien zolang u de computer of het netwerk niet herstart. De dns configuratie in /etc/resolv.conf en de /etc/hosts worden onmiddellijk actief bij wijziging - ze zijn dus altijd 'permanent'.
hostname
Met het commando
# hostname <computernaam>
kan u tijdelijk de hostnaam van uw computer aanpassen, meer info vindt u in de man pagina's.
ip-addres en netmask
Met het commando
# ifconfig eth0 172.16.31.16/16
stelt u tijdelijk een nieuw ip-adres en netmask in. (Soms moet u dit commando 2 keer na mekaar intikken).
default gateway
Met het commando
# route add default gw 172.16.0.2
kunt u tijdelijk een default gateway toevoegen aan u route tabel.