5.3.0 TCP/IP конфигурация

На този етап, мрежовата карта трябва да е физически инсталирана във вашия компютър и необходимите кернел модули да са заредени. Все още няма да можете да комуникирате през картата, но можете да получите информация за нея с ifconfig -a.

# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:A0:CC:3C:60:A4
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:110081 errors:1 dropped:0 overruns:0 frame:0
TX packets:84931 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:114824506 (109.5 Mb) TX bytes:9337924 (8.9 Mb)
Interrupt:5 Base address:0x8400

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2234 errors:0 dropped:0 overruns:0 frame:0
TX packets:2234 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:168758 (164.8 Kb) TX bytes:168758 (164.8 Kb)

Ако изпълните /sbin/ifconfig без -a аргумента, няма да видите eth0 интерфейса, понеже мрежовата карта все още няма валиден IP адрес или маршрут.

Има много различни начини да настроите мрежата, но всички могат да се разделят на два типа: статични и динамични. При статична настройка, всеки възел (node / IP) винаги има една и съща стойност (един и същ IP адрес). При динамичните мрежи, адресите се разпределят от DHCP сървър, т.е. не са постоянни.

5.3.1 DHCP

Когато се стартира DHCP клиент, той отправя искане по локалната мрежа (LAN) към DHCP сървър, който да му даде IP адрес. DHCP сървъра разполага с обхват от свободни адреси, той ще отговори на това искане с IP адрес и срок на ползване. Щом срокът на ползване изтече, клиентът трябва отново да отправи искане и така цикълът се повтаря.

Клиентът ще приеме предложения му IP адрес от сървъра и ще конфигурира даденото устройство. DHCP клиентите използват един трик, те запомнят последния им даден IP адрес и отправят искане към сървъра да им предостави същия адрес. Ако е възможно, съръвърът ще изпълни искането, ако не ще предостави нов IP адрес. Уговорките между клиента и сървъра могат да се оприличат на следното:

Клиент: Има ли DHCP сървър в мрежата?
Сървър: Да, има. Ето ме.
Клиент: Нуждая се от IP адрес.
Сървър: Можеш да вземеш 192.168.10.10 за 19200 секунди.
Клиент: Благодаря.
Клиент: Има ли DHCP сървър в мрежата?
Сървър: Да, има. Ето ме.
Client: Нуждая се от IP адрес. При последния ни разговор получих 192.168.10.10; Може ли отново да ми дадеш същия?
Сървър: Да, може (или не неможе, yo: take 192.168.10.12 instead).
Клиент: Благодаря.

DHCP клиента в Linux е /sbin/dhcpcd. DHCP контролира и друга информация, например кой ntp срвър да ползва, кой маршрут и т.н.

Настройката на DHCP в Slackware е проста. Просто стартирайте netconfig и изберете DHCP. Ако имате повече от един мрежов адаптер (NIC) и не искате eth0 да се конфигурира от DHCP, редактирайте /etc/rc.d/rc.inet1.conf файла и сменете записа отговарящ за вашето устройство на “YES”.

5.3.2 Статичен IP

Статичните IP адреси са фиксирани, могат да се сменят само ръчно. Използват се, когато администратора не желае тази информация да се сменя, например за вътрешни сървъри в LAN. При статичното IP адресиране, Вие настройвате IP адреса и той си остава постоянно такъв. Другите машини знаят, че могат да се свържат с вас винаги на този адрес.

5.3.3 /etc/rc.d/rc.inet1.conf

Ако искате да настроите IP адреса, може да направите това с netconfig скрипта или чрез ръчно редактиране на /etc/rc.d/rc.inet1.conf. В /etc/rc.d/rc.inet1.conf ще забележите следното:

# Primary network interface card (eth0)
IPADDR[0]=""
NETMASK[0]=""
USE_DHCP[0]=""
DHCP_HOSTNAME[0]=""

И най-долу:

GATEWAY=""

В този случай, задачата ни е да поставим правилната информация между кавичките. Тези променливи се извикват от /etc/rc.d/rc.inet1 при стартиране, за да се настроят мрежовите устройства. За всяка карта въведете необходимата IP информация или сложете “YES” за USE_DHCP.

DEFAULT_GW стойността представя маршрута (route). Комуникацията между вас и всичко останало в Интернет минава през този маршрут (gateway). Ако използвате DHCP, вероятно няма да е нужно да попълвате информация тук. DHCP сървъра ще определи какъв маршрут да ползвате.

5.3.4 /etc/resolv.conf

Добре, вече имате IP адрес, имате и зададен маршрут, може дори да имате 10 милиона долара, но какво от това, щом не можете да преобрзувате имена в IP адреси? Никой не иска да въвежда 72.9.234.112 в уеб браузъра за да види www.slackbook.org. Поради тази причина трябва да настроим DNS, но как? Тук в играта влиза /etc/resolv.conf.

Ако използвате DHCP най-вероятно имате коректните записи в /etc/resolv.conf. Ако искате ръчно да зададете DNS сървъри, ще трябва да редактирате /etc/resolv.conf. Ето и пример:

# cat /etc/resolv.conf
nameserver 192.168.1.254
search lizella.net

Първия ред е ясен. nameserver директивата указва кой DNS да се ползва. По необходимост това винаги е IP адрес. Може да имате колкото искате DNS сървъри.

Втория ред е малко по-интересен. search директивата позволява да се свързвате със зададената машина само с първата част от нейното име (FQDN (Fully Qualified Domain Name)). За пример, ако “slackware.com” е в search пътя, ще можете да достигнете http://store.slackware.com, само с http://store.

# ping -c 1 store
PING store.slackware.com (69.50.233.153): 56 data bytes
64 bytes from 69.50.233.153 : icmp_seq=0 ttl=64 time=0.251 ms
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.251/0.251/0.251 ms

5.3.5 /etc/hosts

Сега имаме работещ DNS, но как можем да пренебрегнем DNS сървъра или да добавим DNS запис за машина, която всъщност не е в DNS? Slackware предоставя /etc/hosts файла, който съдържа списък с локални IP адреси и имена на които те отговарят.

# cat /etc/hosts
127.0.0.1 localhost locahost.localdomain
192.168.1.101 redtail
172.14.66.32 foobar.slackware.com

Виждате, че localhost е с IP адрес 127.0.0.1 (винаги запазен за localhost), redtail е достъпен на 192.168.1.101 и foobar.slackware.com отговаря на 172.14.66.32.


Valid XHTML 1.0 Strict