Мрежови комуникации в Linux
1. Настройка на мрежовите интерфейси
- наименования на устройствата (мрежови карти) в Mandrake Linux (Mandriva):
eth0, 1, 2, …. - мрежови карти
lo - loopback интерфейс - локален мрежов интерфейс, ползва се за тестване на мрежовите протоколи на локалния компютър
ifconfig – команда за настройка на мрежовите интерфейси
Параметри на мр. интерфейси:
- IP адрес: xxx.xxx.xxx.xxx
xxx -> 0…255
- Маска: xxx.xxx.xxx.xxx (255.255.255.0)
- Gateway – интерфейс по подразбиране (шлюз към интернет).
- сървър за имена (name server, resolver) връща IP адреса на хоста
Пример:
ifconfig име_на_интерфейс up - активира интерфейса
ifconfig име_на_интерфейс down - деактивира интерфейса
Примери:
ifconfig eth0 down - деактивира интерфейс eth0
ifconfig eth0 up - активира интерфейс eth0
ifconfig eth1 192.168.1.1 netmask 255.255.255.0 up - задава IP адрес и маска на eth1 и го активира
ifconfig eth1 - дава информация за параметрите на интерфейс eth1
route – дава информация за routing таблицата (таблица на маршрутите)
Пример:
параметър add - добавя нов маршрут
параметър del - изтрива маршрут
Пример:
route add default gw 194.141.64.129 - добавя се шлюз по подразбиране в таблицата
Сървърът за имена (DNS - Domain Name Service) се задава в текстовия файл /etc/resolv.conf
cat /etc/resolv.conf - показва съдържанието на файла
Пример:
vi /etc/resolv.conf – за промяна на файла
команди: i – режим на редактиране
Esc, :, wq – команди за запис и изход
resolveip име_на_хост – връща IP адреса на дадения хост
Пример: resolveip abv.bg
Резултат: 194.153.145.105
Пример:
host име_на_хост - дава информация за IP адреса на хоста, както и допълнителна информация, напр. сървър който управлява пощата за дадения хост
Пример:
dig, nslookup- дават по-подробна информация за дадения хост, получена от DNS сървърите
Пример:
Пример:
arp - показва ARP таблицата (Address Resolution Protocol) - дава съответствието между IP адреса и физическия адрес на мрежовия интерфейс
Пример:
2. Тестване на мрежи
ping – проверява връзката до даден хост
пример: ping abv.bg
Изходът на командата се прекъсва с CTRL+C.
Пример:
traceroute име_на_хост – трасиране на маршрута до дадения хост
Пример:
nmap име_на_хост – проверява какви услуги и портове има отворени на дадения хост
Пример:
Статусът на услугата показва дали тя е достъпна или не, напр. порт 80 -> услуга http - статус open (услугата е достъпна).
Списък с всички познати услуги ще открием във файла /etc/services
Пример:
netstat - дава информация за изградените мрежови връзки, маршрутни таблици, мрежова статистика и отворените сокети на локалния хост
Пример:
netstat -tcp - дава информация само за текущите мрежови връзки (прекъсва се с CTRL+C)
Пример:
tcpdump - дава информация за всички пакети в мрежата, получени през мрежовия интерфейс
Изходът на командата се спира с CTRL+C
Пример:
Параметри:
-i име_на_интерфейс - прихваща пакетите само от дадения интерфейс ( пример: tcpdump -i eth0 )
-A - извежда пакетите като обикновен текст без техните заглавни части, използва се за прихващане на уеб страници
-c число - извежда определен брой пакети и спира
-D - извежда списък на мрежовите интерфейси, от които може да се прихващат пакети
-v, -vv, -vvv - извежда по-подробна информация
Примери:
tcpdump host адрес_в_интернет - извежда вх/изходната индормация от/към дадения адрес
tcpdump host адрес1 and адрес2 - извежда информацията, която се обменя между адрес1 и адрес2
tcpdump host адрес1 and not адрес2 - извежда информацията, която се обменя между адрес1 и всеки друг адрес с изключение на адрес2
tcpdump | grep търсен_стринг - извежда само редовете, които съдържат търсения стринг