From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 24 Oct 2002 23:27:53 +1100 From: Dmitry Lebkov To: community@altlinux.ru Subject: Re: [Comm] =?KOI8-R?B?8M/e1M/X2cog08XS18XSINDPxCDtwdPUxdLPzQ==?= Message-Id: <20021024232753.2b11ff06.dima@sakhalin.ru> In-Reply-To: <20021024103506.GA9589@hell.immo> References: <20021024073103.GA3423@toyotasamara.ru> <200210241029.39205.p_serge@fromru.com> <20021024075330.GB3423@toyotasamara.ru> <200210241049.33139.p_serge@fromru.com> <20021024081002.GA5494@toyotasamara.ru> <20021024103506.GA9589@hell.immo> X-Mailer: Sylpheed version 0.8.5 (GTK+ 1.2.10; i686-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 8bit Sender: community-admin@altlinux.ru Errors-To: community-admin@altlinux.ru X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.0.9 Precedence: bulk Reply-To: community@altlinux.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: List-Post: On Thu, 24 Oct 2002 14:35:06 +0400 "Alexey I. Froloff" wrote: > On Thu, Oct 24, 2002 at 01:10:02PM +0500, demien@samtel.ru wrote: > > > > Да, именно так и прописано, насколько я понимаю это означает > > > > 192.168.0.1-192.168.0.254 > > > Боюсь, что нет. > > > пропишите 192.168.0.0/24 - должно заработать > > > - -- > > Спасибо преогромное!!! Отправка заработала! > > Только вот я лично нихрена не понял ((( КАК? почему 192.168.0.0/24? > apt-get install gtkipcalc > > P.S. Может кто хэлп коротенький к этой утиле напишет? Что-то у > меня не получается внятно по человечески описАть, что такое > маска/биты/количество адресов и как они связаны... 1) IP-адрес делится на сетевую и хостовую части. 2) Маска значащими битами маскирует ("масло маслянное", но по-другому как? "прячет", "выделяет" ?) сетевую часть адреса - это и есть длина маски, т.е. префикс - число, указываемое после '/'. Пример1: 192.168.0.0/25 Длина маски - 25 значащих бит. В двоичном представлении: 11111111.11111111.11111111.10000000. Префикс длиной 25 делим на 8. С остатком получаем 3 и 1, т.е три байта, все биты которых = 1 и 1 байт старший бит которого = 1. Все остальное = 0. В десятичном представлении это выглядит так: 255.255.255.128. Кол-во хостов в подсети с указанной длиной маски можно найти так: 32 бита (полная длина маски 8бит * 4) - 25 бит (маска /25) = 7 бит (в десятичном виде 1111111 = 127). К 127 добавляем 1 и получаем кол-во хостов в сети с длиной маски 25 бит = 128. Десятичное представление ip-адреса - только для удобства восприятия. На самом деле это 4 байта, над которыми производятся логические операции (в частности AND). 3) В каждой ip-сети существует адрес сети - это когда все биты хостовой части = 0 и broadcast-адрес - все биты хостовой части = 1. Пример2: 192.168.0.0/255.255.255.128 - подсеть из 128 адресов длина маски 25 бит, дина хостовой части = 32 - 25 = 7 бит. Адрес сети - 192.168.0.0, (последние семь бит адреса = 000000), broadcast-адрес - 192.168.0.127 (последние 7 бит адреса = 1111111. Для адресации хостов остается 126 адресов. 4) Бинарное AND ip-адреса и маски _всегда_ дает адрес сети. На этом строится маршрутизация: адрес пакета AND маска пакета -> -> поиск результата в таблице маршрутов (это вкратце ;). Пример3: подсеть 192.168.0.128/255.255.255.128, хост 192.168.0.192 AND 255.255.255.128 = 192.168.0.128 Каждый байт адреса AND с соответствующим байтом маски: 192 AND 255 = 192, 168 AND 255 = 168, 0 AND 255 = 0, 192 AND 128 = 128. Т.е. получили адрес сети - 192.168.0.128. Для проверки: последний байт = 10. 10 AND 128 = 0 - 192.168.0.0/255.255.255.128 - это уже другая подсеть сети 192.168.0 c длиной маски в 25 бит. Да, понятие классов сетей (A,B,C,D,E) на сегодняшний день устарело. Сейчас восновном используется CIDR - Classles InterDomain Routing, использующий те самые префиксы (длину маски в битах). Вот вроде так, если мне не изменяет мой склероз ... WBR, Dmitry Lebkov PS. Эк меня ... %) рассказывать основы TCP/IP в Linux'овом листе рассылке. Надеюсь, это кому-нить пригодится %)