Tuesday, February 24, 2009

Configurare DHCP server

In acest tutorial vom arata cum sa-ti setezi dhcp server pentru reteaua ta locala.

Arhitectura retelei:

  • In reteaua mea locala folosesc clasa 192.168.0.0, masca ( subnetmask) 255.255.255.0 , broadcast 192.168.0.255
  • Gateway-ul este 192.168.0.1 - pe aceasta masina doresc sa configurez server de dhcp
  • DNS-urile pe care ISP-ul mi le-a dat sunt urmatoarele 193.230.219.2, 84.247.120.1, 193.230.219.60, 193.230.219.1
  • O sa vreau ca serverul de dhcp sa gestioneze 10 ip-uri pentru ca nu am nevoie de mai mult

Instalare:

# apt-get install dhcp3-server

In timpul instalarii o sa va arate niste informatii referitoare la serverul dhcp. Apasati ENTER. Desemenea ignorati mesajul:

Generating /etc/default/dhcp3-server…
Starting DHCP server: dhcpd3 failed to start - check syslog for diagnostics.
invoke-rc.d: initscript dhcp3-server, action “start” failed.

Eroarea este justificata pentru ca inca nu am configurat nimic.

Configurare:

Avem nevoie sa-i spunem serverului de dhcp pe ce interfata sa asculte. Serverul meu foloseste interfata eth0 pentru reteaua locala.

# vi /etc/default/dhcp3-server

INTERFACES=”eth0″

Fac backup la fisierul de configurare. Este un sample dupa care putem sa ne ghidam in viitor

# cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_orig

# cat /dev/null > /etc/dhcp3/dhcpd.conf

# vi /etc/dhcp3/dhcpd.conf

ddns-update-style none;

option domain-name-servers 193.230.219.2, 84.247.120.1, 193.230.219.60, 193.230.219.1;

default-lease-time 25920000;
max-lease-time 25920000;

authoritative;

subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.2 192.168.0.10;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.1;
}

Doresc ca cele doua calculatoare ale mele sa primeasca acelasi ip. Pentru a realiza acest lucru adaug in fisierul de configurare urmatoarele linii:

host anaconda {
hardware ethernet 00:14:85:0B:14:B2;
fixed-address 192.168.0.2;
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
}

host laptop {
hardware ethernet 00:13:D4:33:72:FF;
fixed-address 192.168.0.3;
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
}

Serverul dhcp a fost configurat. Restartam serverul de dhcp pentru a pornii cu noile setari:

# /etc/init.d/dhcp3-server

Puteti deasemenea sa verificati daca ruleaza folosind comanda:

# netstat -uap

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 *:bootps *:* 5757/dhcpd3

# grep bootps /etc/services

bootps 67/tcp # BOOTP server
bootps 67/udp

Cum verificam sa vedem daca serverul este configurat corect?

Porniti un calculator in retea setati ca ip-urile sa fie luate automat.

Apoi verificati logurile.

# tail /var/log/syslog
May 4 22:39:59 naboo dhcpd: Dynamic and static leases present for 192.168.0.3.
May 4 22:39:59 naboo dhcpd: Remove host declaration laptop or remove 192.168.0.3
May 4 22:39:59 naboo dhcpd: from the dynamic address pool for 192.168.0/24
May 4 22:39:59 naboo dhcpd: DHCPREQUEST for 192.168.0.3 from 00:13:d4:33:72:ff via eth0
May 4 22:39:59 naboo dhcpd: DHCPACK on 192.168.0.3 to 00:13:d4:33:72:ff via eth0

1 comment:

  1. Stai asa ca m-ai pierdut, daca tu ai ambele calculatoare, cu vista si cu ubuntu, conectate intr-un router, ambele au acces la internet prin router, intrebarea mea este, ambele calculatoare au ip-uri din aceeasi clasa?

    Daca da, atunci se vad in retea, iar daca se vad in retea, pentru a seta un share pe serverul pe ubuntu trebuie instalat samba:
    Cod:

    sudo apt-get install samba

    Dupa care editezi fisierul /etc/smb.conf sau creezi unul nou. Eu o sa explic pe varianta de fisier nou. Presupunem cateva lucruri inainte:
    1. pc cu ubuntu are 192.168.0.1
    2. pc cu vista are 192.168.0.2
    3. pc-urile se vad in retea
    4. pe ubuntu si pe vista ai acces la net
    5. serverul samba a fost instalat dupa comanda de mai sus
    6. ca la share-ul de windows, trebuie mai intai sa stii ce folder dai la share de pe serverul de linux si ce permisiuni de acces exista pe acesta. In exemplu vom partaja (asta e termenul corect) directorul /media/share. Acesta va avea drepturi depline de citire/scriere (sudo chmod 777 /media/share)

    O sa iti explic o data ca si comenzi si configurare fisiere, apoi comentariile separat (ca nu iti place daca sunt amestecate).

    Cod:

    sudo su
    mv /etc/smb.conf /etc/smb.conf.backup
    touch /etc/smb.conf
    mcedit /etc/smb.conf

    Apoi in fisier scrii:

    Cod:

    workgroup = workgroup
    server string = Samba Server
    hosts allow = 192.168.0.2
    log file = /var/log/samba/%m.log
    encrypt passwords = yes
    smb passwd file = /etc/samba/smbpasswd
    interfaces = 192.168.0.1/24
    [folder partajat]
    comment = "nume share"
    path = /media/share
    valid users = nume_utilizator
    public = no
    writable = yes
    browseable = yes

    Acum ca am creat fisierul, il salvam si adaugam utilizatorii care vor avea acces:
    Cod:

    smbpasswd -a nume_utilizator
    smbpasswd -e nume_utilizator

    Apoi dai
    Cod:

    sudo /etc/init.d/samba start

    Si ar trebui sa mearga serverul de fisiere pe ubuntu. Il accesezi de pe vista ca orice alt share normal de retea, la username pui numele ales de utilizator, cel pe care l-ai adaugat prin comanda smbpasswd si parola trecuta acolo.

    Explicatii pentru fisierul de configurare: aici.

    ReplyDelete