<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0" xml:base="http://muff.kiev.ua">
<channel>
 <title>muff.kiev.ua</title>
 <link>http://muff.kiev.ua</link>
 <description />
 <language>ru</language>
<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/muff-feedburner" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="muff-feedburner" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
 <title>MySQL - перенос БД в другой каталог</title>
 <link>http://muff.kiev.ua/content/mysql-perenos-bd-v-drugoi-katalog</link>
 <description>&lt;p class="rtecenter"&gt;&lt;img alt="MySQL logo" width="140" height="102" src="http://muff.kiev.ua/files/mysql-logo.jpg" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;В настройках по умолчанию, &lt;strong&gt;MySQL&lt;/strong&gt; файлы БД&amp;nbsp;хранятся в каталоге &lt;strong&gt;/var/db/mysql&lt;/strong&gt;. Но иногда бывают ситуации,&amp;nbsp;когда необходимо изменить каталог хранения баз данных. Переносить будем в каталог &lt;strong&gt;/usr/mysql&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Итак,&amp;nbsp;проверим текущее место хранение файлов баз данных:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
mysql&amp;gt; &lt;strong&gt;show variables like 'datadir';
&lt;/strong&gt;+---------------+----------------+
| Variable_name | Value          |
+---------------+----------------+
| datadir       | &lt;span style="color: #ff0000"&gt;/var/db/mysql/&lt;/span&gt; |
+---------------+----------------+
1 row in set (0.00 sec)&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p class="rtejustify"&gt;Начнем процедуру переноса. Для начала остановим &lt;strong&gt;MySQL&lt;/strong&gt;-сервер:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;sh /usr/local/etc/rc.d/mysql-server stop&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;После этого скопируем базы данных и установим владельцем каталогов и файлов пользователя &lt;strong&gt;mysql&lt;/strong&gt;:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cp -R /var/db/mysql /usr/mysql&lt;br /&gt;
            &lt;/strong&gt;# &lt;strong&gt;chown -R mysql:mysql /usr/mysql&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;Добавим в &lt;strong&gt;rc.conf&lt;/strong&gt; опцию,&amp;nbsp;которая указывает каталог хранения баз данных&amp;nbsp;&lt;strong&gt;MySQL&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;echo 'mysql_dbdir=&amp;quot;/usr/mysql&amp;quot;' &amp;gt;&amp;gt; /etc/rc.conf&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;После этого дадим команду на запуск &lt;strong&gt;MySQL&lt;/strong&gt;-сервера:&lt;/p&gt;
&lt;p&gt;&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;sh /usr/local/etc/rc.d/mysql-server start&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;Проверяем текущее&amp;nbsp;значение переменной &lt;strong&gt;datadir&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
mysql&amp;gt; &lt;strong&gt;show variables like 'datadir';
&lt;/strong&gt;+---------------+-------------+
| Variable_name | Value       |
+---------------+-------------+
| datadir       | &lt;span style="color: #ff0000"&gt;/usr/mysql/&lt;/span&gt; |
+---------------+-------------+
1 row in set (0.01 sec)&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;После этого можно выполнить зачистку и удалить каталог &lt;strong&gt;/var/db/mysql&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;rm -R /var/db/mysql&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/mysql-perenos-bd-v-drugoi-katalog#comments</comments>
 <pubDate>Wed, 16 May 2012 23:46:04 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">462 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Dhcdrop - блокировка сторонних DHCP-серверов в сети</title>
 <link>http://muff.kiev.ua/content/dhcdrop-blokirovka-storonnikh-dhcp-serverov-v-seti</link>
 <description>&lt;p class="rtejustify"&gt;&lt;strong&gt;DHCP&lt;/strong&gt;&amp;nbsp;(&lt;em&gt;&lt;strong&gt;Dynamic Host Configuration Protocol&lt;/strong&gt;&lt;/em&gt; &amp;mdash; протокол динамической конфигурации узла) &amp;mdash; это сетевой протокол, позволяющий компьютерам автоматически получать &lt;strong&gt;IP-адрес &lt;/strong&gt;и другие параметры, необходимые для работы в сети &lt;strong&gt;TCP/IP&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Чтобы не говорили, а использование автоматического назначения IP-адресации в сети намного упрощает жизнь&amp;nbsp;и администратору,&amp;nbsp;и конечному пользователю. Однако,&amp;nbsp;при эксплуатации такой сети,&amp;nbsp;можно столкнуться с появлением в сети сторонних &lt;strong&gt;DHCP-серверов&lt;/strong&gt; (маршрутизатор,&amp;nbsp;включенный в сеть &lt;strong&gt;LAN-портом&lt;/strong&gt;; сетевые устройства в режиме моста; &lt;strong&gt;DHCP-сервер&lt;/strong&gt; на компьютере абонента и тд.). В случае,&amp;nbsp;когда сеть построена на управляемых коммутаторах, бороться с этим явлением довольно просто - с помощью &lt;strong&gt;ACL&lt;/strong&gt;. А что делать,&amp;nbsp;если сеть построена на неуправляемых коммутаторах? Как блокировать работу сторонних &lt;strong&gt;DHCP-серверов&lt;/strong&gt; без ущерба для работы сети и не &amp;quot;мешая&amp;quot; основному &lt;strong&gt;DHCP-серверу&lt;/strong&gt;?&lt;/p&gt;
&lt;p class="rtejustify"&gt;Одним из наиболее действенных инструментов выступает программа &lt;strong&gt;dhcdrop&lt;/strong&gt;. Она обеспечивает поиск сторонних &lt;strong&gt;DHCP-серверов&lt;/strong&gt; и их подавление путем исчерпания пула &lt;strong&gt;IP-адресов &lt;/strong&gt;(&lt;strong&gt;DHCP starvation&lt;/strong&gt;). Более подробная информация&amp;nbsp;- &lt;a href="http://www.netpatch.ru/dhcdrop.html"&gt;на сайте проекта&lt;/a&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Что радует - так это то,&amp;nbsp;что &lt;strong&gt;dhcdrop&lt;/strong&gt; есть в портах. Выполним установку:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cd /usr/ports/net-mgmt/dhcdrop &amp;amp;&amp;amp; make install clean &amp;amp;&amp;amp; rehash&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;По завершению установки советую обратиться к страницам man-руководства... Ознакомимся со списком доступных опций (свои комментарии выделил красным):&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;strong&gt;-h&lt;/strong&gt; - показывает help-сообщение.&lt;br /&gt;
&lt;strong&gt;-D&lt;/strong&gt; - просмотр списка имён и индексов сетевых интерфейсов. Актуально в ОС Windows.&lt;br /&gt;
&lt;strong&gt;-t&lt;/strong&gt; - режим теста. В этом режиме dhcdrop не выполняет подавление сервера. Производится лишь посылка DHCPDISCOVER, если на него приходит ответ нелегального сервера, то программа заверается возвращаяя код 200 и выводя на экран строку вида DHCP SRV: 10.7.7.1 (IP-hdr: 10.7.7.1) SRV ether: 00:02:44:75:77:E4, YIP: 10.7.7.205 содержащую минимум информации о создающем проблему DHCP сервере.&lt;br /&gt;
&lt;strong&gt;-y&lt;/strong&gt; - подразумевается ответ &amp;quot;yes&amp;quot; на любой вопрос программы. &lt;em&gt;&lt;span style="color: #ff0000"&gt;(позволяет автоматически соглашаться с предложениями &amp;laquo;давить&amp;raquo; найденные сервера)&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;
&lt;strong&gt;-r&lt;/strong&gt; - отключает рандомизацию MAC адреса источника. Каждый последующий MAC адрес источника увеличивается на 1.&lt;br /&gt;
&lt;strong&gt;-b&lt;/strong&gt; - указывает на необходимость использования флага BROADCAST в отправляемых DHCP пакетах.&lt;br /&gt;
&lt;strong&gt;-a&lt;/strong&gt; - всегда ожидать ответа сервера на порт DHCP клиента по умолчанию (68), даже если задано значение номера порта клиента отличное от значения по умолчанию.&lt;br /&gt;
&lt;strong&gt;-A&lt;/strong&gt; - всегда ожидать ответа с порта DHCP сервера по умолчанию (67), даже если задано значение номера порта сервера отличное от значения по умолчанию.&lt;br /&gt;
&lt;strong&gt;-f&lt;/strong&gt; - режим флуда запросами DHCPDISCOVER. ПРИМЕНЯТЬ С ОСТОРОЖНОСТЬЮ. Удобен для стресс-тестирования сервера. В случае указания опции -r все отправляемые пакеты имеют одинаковый MAC адрес.&lt;br /&gt;
&lt;strong&gt;-R&lt;/strong&gt; - отправляет сообщение DHCPRELEASE с MAC адресом источника указанном при запуске программы и IP адресом указанным при помощи опции -F к серверу указанному опцией -s.&lt;br /&gt;
&lt;strong&gt;-q&lt;/strong&gt; - &amp;quot;тихий&amp;quot; режим работы. Выводится минимум информации.&lt;br /&gt;
&lt;strong&gt;-m&lt;/strong&gt; &lt;strong&gt;count &lt;/strong&gt;- максимальное число попыток получения ответа от сервера. &lt;em&gt;&lt;span style="color: #ff0000"&gt;(по умолчанию 255, в редких случаях необходимо увеличивать)&lt;br /&gt;
&lt;/span&gt;&lt;/em&gt;&lt;strong&gt;-c count&lt;/strong&gt; - максимальное число адресов арендуемых у сервера.&lt;br /&gt;
&lt;strong&gt;-n hostname&lt;/strong&gt; - значение DHCP опции HostName (по умолчанию - &amp;quot;DHCP-dropper&amp;quot;)&lt;br /&gt;
&lt;strong&gt;-N clientname&lt;/strong&gt; - значение DHCP опции Vendor-Class (по умолчанию - &amp;quot;DHCP-dropper&amp;quot;)&lt;br /&gt;
&lt;strong&gt;-p port&lt;/strong&gt; - порт используемый клиентом для отправки DHCP сообщений. По умолчанию - 68.&lt;br /&gt;
&lt;strong&gt;-P port&lt;/strong&gt; - порт сервера, на который отправляются DHCP сообщения. По умолчанию - 67.&lt;br /&gt;
&lt;strong&gt;-w секунд&lt;/strong&gt; - задаёт таймаут рестарта процесса получения IP адресов в случае использования агрессивного режима. По умолчанию - 60 секунд.&lt;br /&gt;
&lt;strong&gt;-T timeout&lt;/strong&gt; - устанавливает таймаут ожидания ответа сервера (в секундах). По умолчанию - 3 секунды.&lt;br /&gt;
&lt;strong&gt;-M хостов-максимум&lt;/strong&gt; - максимально допустимое количество сканируемых хостов в случае использования агрессивного режима.&lt;br /&gt;
&lt;strong&gt;-l MAC-address&lt;/strong&gt; - Ethernet адрес сервера который необходимо игнориновать при выполненении поиска ложных DHCP серверов в сети. В этой опции следует указать адрес DHCP сервера ответственного за раздачу адресов в данном сегменте сети. Может быть указано несколько адресов - каждый должен предваряться ключом -l.&lt;br /&gt;
&lt;strong&gt;-L легальная-сеть&lt;/strong&gt; - указывает легальную IP подсеть для выбранного интерфейса. Использование этой опции автоматически включает агрессивный режим получения IP адресов. Может быть указано несколько сетей - каждая должна предваряться ключом -L. Подробное описание смотрите ниже.&lt;br /&gt;
&lt;strong&gt;-S сеть/маска&lt;/strong&gt; - ARP сканирование сети 'сеть' с использованием сетевой маски 'маска' в CIDR нотации. IP адрес источника задаётся опцией -F. Если IP адрес источника не задан - используется случайный адрес из диапазона указанной подсети. Пример использования смотрите ниже.&lt;br /&gt;
&lt;strong&gt;-F исходящий-IP-адрес&lt;/strong&gt; - указывает IP адрес источника для сканирования сети (опция -S), либо IP адрес DHCP клиента для отправки сообщения DHCPRELEASE (опция -R).&lt;br /&gt;
&lt;strong&gt;-s IP-адрес-сервера&lt;/strong&gt; - задаёт IP адрес DHCP сервера. Используется с опцией -R.&lt;br /&gt;
&lt;strong&gt;-C count&lt;/strong&gt; - число порождаемых процессов-потомков. Совместим только с флагом -f. Используется для увеличения числа отправляемых пакетов за единицу времени. При значении этого параметра равном 30, 10000 пакетов генерировалось менее чем за 1,5 секунды.&lt;br /&gt;
&lt;strong&gt;-i interface&lt;/strong&gt; - имя либо индекс сетевого интерфейса (см. ключ -D). Не может быть &amp;quot;any&amp;quot;! Единственный обязательный параметр программы.&lt;br /&gt;
&lt;strong&gt;initial MAC address&lt;/strong&gt; - задаёт MAC адрес источника используемый при отправке первого DHCP сообщения, либо используемый постоянно, в случае использования опции '-f' (flood) вместе с опцией '-r'. Если не указан, то используется случайный MAC адрес источника.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Отметим также коды выхода программы (надеюсь,&amp;nbsp;что все читатели &amp;quot;дружат&amp;quot; с английским языком):&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;strong&gt;0 &lt;/strong&gt;- Exit success. Illegal DHCP server not found.&lt;br /&gt;
&lt;strong&gt;10 &lt;/strong&gt;- invalid user ID. You must be root for running programm.&lt;br /&gt;
&lt;strong&gt;20 &lt;/strong&gt;- failed to set signal handler.&lt;br /&gt;
&lt;strong&gt;30 &lt;/strong&gt;- configuration error. See usage.&lt;br /&gt;
&lt;strong&gt;40 &lt;/strong&gt;- memory allocation error. Insufficient memory?&lt;br /&gt;
&lt;strong&gt;50 &lt;/strong&gt;- error opening ethernet device.&lt;br /&gt;
&lt;strong&gt;51 &lt;/strong&gt;- error listing devices.&lt;br /&gt;
&lt;strong&gt;60 &lt;/strong&gt;- pcap filter overflow.&lt;br /&gt;
&lt;strong&gt;70 &lt;/strong&gt;- pcap compile error.&lt;br /&gt;
&lt;strong&gt;80 &lt;/strong&gt;- pcap set filter error.&lt;br /&gt;
&lt;strong&gt;90 &lt;/strong&gt;- error sending packet.&lt;br /&gt;
&lt;strong&gt;100 &lt;/strong&gt;- error getting packet.&lt;br /&gt;
&lt;strong&gt;110 &lt;/strong&gt;- set non blocked mode error.&lt;br /&gt;
&lt;strong&gt;120 &lt;/strong&gt;- invalid device.&lt;br /&gt;
&lt;strong&gt;200 &lt;/strong&gt;- illegal DHCP server was found.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;Соответственно,&amp;nbsp;подберем следующие ключи для запуска&amp;nbsp;&lt;strong&gt;dhcdrop&lt;/strong&gt; на интерфейсе&amp;nbsp;&lt;strong&gt;vlan51&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;dhcdrop -y -r -m 3 fe:fe:fe:fe:fe:00 -l &lt;span style="color: #ff0000"&gt;00:0b:cd:68:78:cc&lt;/span&gt; -i &lt;/strong&gt;&lt;span style="color: #ff0000"&gt;&lt;strong&gt;vlan51&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Здесь:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;00:0b:cd:68:78:cc&lt;/strong&gt; - &lt;strong&gt;MAC-адрес&lt;/strong&gt; легитимного &lt;strong&gt;DHCP-сервера&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;vlan51&lt;/strong&gt;&amp;nbsp;- интерфейс &lt;strong&gt;FreeBSD-сервера&lt;/strong&gt;,&amp;nbsp;который&amp;nbsp;&amp;quot;смотрит&amp;quot; в&amp;nbsp;сеть с посторонним &lt;strong&gt;DHCP-сервером&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="rtejustify"&gt;Пример работы &lt;strong&gt;dhcdrop&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;dhcdrop -y -r -m&amp;nbsp;3 fe:fe:fe:fe:fe:00 -l 00:0b:cd:68:78:cc -i vlan51&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Using interface: 'vlan51'&lt;br /&gt;
            Got response from server 192.168.85.65 (IP-header 192.168.85.65), server ethernet address: B0:48:7A:F0:47:1C, lease time: 0.083h (300s)&lt;br /&gt;
            Got BOOTREPLY (DHCPOFFER) for client ether: FE:FE:FE:FE:FE:00 You IP: 192.168.85.68/26&lt;br /&gt;
            1. Got BOOTREPLY (DHCPACK) for client ether: FE:FE:FE:FE:FE:00 You IP: 192.168.85.68/26&lt;br /&gt;
            2. Got BOOTREPLY (DHCPACK) for client ether: FE:FE:FE:FE:FE:01 You IP: 192.168.85.69/26&lt;br /&gt;
            3. Got BOOTREPLY (DHCPACK) for client ether: FE:FE:FE:FE:FE:02 You IP: 192.168.85.70/26&lt;br /&gt;
            4. Got BOOTREPLY (DHCPACK) for client ether: FE:FE:FE:FE:FE:03 You IP: 192.168.85.71/26&lt;br /&gt;
            5. Got BOOTREPLY (DHCPACK) for client ether: FE:FE:FE:FE:FE:04 You IP: 192.168.85.72/26&lt;br /&gt;
            Interrupted. Quit.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Также стоит отметить некоторые моменты работы с &lt;strong&gt;dhcdrop&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li class="rtejustify"&gt;в режиме флуда (флаг &lt;strong&gt;-f&lt;/strong&gt;)&amp;nbsp;программа не выбирает адреса из пула сервера, а просто &amp;quot;валит&amp;quot; сеть паразитным трафиком&lt;/li&gt;
&lt;li class="rtejustify"&gt;если запустить программу с числом запросов 1200 (например на час), то обнаруженный сервер будет подавлен только один раз. Особенностью встроенных в аппаратные роутеры &lt;strong&gt;DHCP-серверов&lt;/strong&gt; является их автоматическое очищение пула адресов и восстановление работоспособности через определенный интервал времени. Очевидно, что нужно часто перезапускать программу&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="rtejustify"&gt;Итак,&amp;nbsp;проблема восстановления работоспособности нелегальных серверов так и не решена. Как вариант - запуск &lt;font face="Verdana"&gt;&lt;strong&gt;dhcdrop&lt;/strong&gt;&amp;nbsp;с&amp;nbsp;определенной периодичностью,&amp;nbsp;используя &lt;strong&gt;cron&lt;/strong&gt;. Однако более удобно использовать следующий скрипт:&lt;/font&gt;&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td bgcolor="#333333"&gt;
&lt;pre&gt;&lt;span style="color: #00ccff"&gt;#!/bin/sh&lt;/span&gt;

&lt;span style="color: #00ccff"&gt;DATE=&amp;quot;/bin/date&amp;quot;
LOGDIR=&amp;quot;/var/log/dhcdrop/&amp;quot;
LEGAL_SERVERS=&amp;quot;00:0b:cd:68:78:cc&amp;quot;       &lt;span style="color: #00ff00"&gt;# Legal DHCP Servers, space separated mac address
&lt;/span&gt;DROPPER=&amp;quot;/usr/local/sbin/dhcdrop&amp;quot;&lt;br /&gt;IFNAME=&amp;quot;&lt;span style="color: #ff0000"&gt;vlan50 vlan51 vlan52&lt;/span&gt;&amp;quot;           &lt;span style="color: #00ff00"&gt;# Interfaces on our Router, space separated
&lt;/span&gt;TESTPARAMS=&amp;quot;-t -m 3&amp;quot;
PARAMS=&amp;quot;-y -r -m 3 fe:fe:fe:fe:fe:00&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #00ff00"&gt;# Lets Go!
# legal params
&lt;/span&gt;&lt;span style="color: #00ccff"&gt;for mac in ${LEGAL_SERVERS}; do
    LMAC=&amp;quot;${LMAC} -l ${mac}&amp;quot;
done&lt;/span&gt;

&lt;span style="color: #00ff00"&gt;# Discovering on every interface
&lt;/span&gt;&lt;span style="color: #00ccff"&gt;for IF in ${IFNAME}; do
        echo &amp;quot;Processing interface ${IF}&amp;quot;
        &lt;span style="color: #00ff00"&gt;# test to any DHCP-Server
&lt;/span&gt;        ${DROPPER} -i ${IF} ${LMAC} ${TESTPARAMS}&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #00ccff"&gt;        &lt;span style="color: #00ff00"&gt;# Check for status 200
&lt;/span&gt;        if [ $? = 200 ]; then
            echo &amp;quot;Illegal server found on ${IF}! Dropping him!&amp;quot;
            ${DATE} &amp;gt;&amp;gt; ${LOGDIR}${IF}
            ${DROPPER} ${PARAMS} ${LMAC} -i ${IF} &amp;gt;&amp;gt; ${LOGDIR}${IF}
        else
            echo &amp;quot;Illegal server not found on ${IF}.&amp;quot;
        fi
done&lt;/span&gt;

&lt;span style="color: #00ccff"&gt;echo &amp;quot;All done&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;Для корректной работы скрипта необходимо создать каталог, куда будут писаться логи:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;mkdir /var/log/dhcdrop&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;После этого добавим в &lt;strong&gt;cron&lt;/strong&gt; запуск скрипта каждые 10 минут. У меня путь к скрипту &lt;strong&gt;/usr/local/etc/dhcdrop.sh&lt;/strong&gt;, соответственно:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;echo '# DHCDROP' &amp;gt;&amp;gt; /etc/crontab&lt;/strong&gt;&lt;br /&gt;
            # &lt;strong&gt;echo '*/10 * * * * root&amp;nbsp;&amp;nbsp;&amp;nbsp; /bin/sh &lt;span style="color: #ff0000"&gt;/usr/local/etc/dhcdrop.sh&lt;/span&gt; &amp;gt; /dev/null 2&amp;gt;&amp;amp;1' &amp;gt;&amp;gt; /etc/crontab&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p class="rtejustify"&gt;После этого &amp;quot;забываем&amp;quot; о сторонних DHCP-серверах в неуправляемых сегментах сети. Однако, у злоумышленника еще остаются некоторые лазейки:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;увеличить пул выдаваемых адресов больше 255 - в таком случае необходимо будет установить переменную &lt;strong&gt;PARAMS&lt;/strong&gt; в значение, например,&amp;nbsp;&amp;quot;-y -r -m 3 &lt;span style="color: #ff0000"&gt;-с 4096&lt;/span&gt; fe:fe:fe:fe:fe:00&amp;quot;. Значение ключа необходимо подобрать опытным путем.&lt;/li&gt;
&lt;li&gt;установить короткое время лизинга IP-адресов (до 1-2 минут). Тогда &lt;strong&gt;dhcdrop&lt;/strong&gt; будет постоянно уходить в цикл.&lt;/li&gt;
&lt;/ul&gt;
</description>
 <comments>http://muff.kiev.ua/content/dhcdrop-blokirovka-storonnikh-dhcp-serverov-v-seti#comments</comments>
 <pubDate>Tue, 08 May 2012 12:44:17 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">460 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>ES-2024 - сброс в дефолт</title>
 <link>http://muff.kiev.ua/content/es-2024-sbros-v-defolt</link>
 <description>&lt;p class="rtecenter"&gt;&lt;img alt="ZyXEL logo" width="165" height="61" src="http://muff.kiev.ua/files/ZyXEL.jpg" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Понадобилось как-то сбросить в настройки по умолчанию коммутатор &lt;strong&gt;ZyXEL ES-2024&lt;/strong&gt;. Сбросить только пароль нету возможности,&amp;nbsp;можно только сбросить все настройки на заводские установки.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Пошаговая инструкция.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Подключаем коммутатор через консольный порт к порту &lt;strong&gt;RS-232&lt;/strong&gt;.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li&gt;Запускаем утилиту &lt;strong&gt;&lt;a href="http://muff.kiev.ua/content/minicom-rabotaem-s-oborudovaniem-cherez-rs232"&gt;minicom&lt;/a&gt;&lt;/strong&gt;. Параметры подключения: &lt;strong&gt;9600 8N1&lt;/strong&gt;.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Подаем питание на устройство и дожидаемся вывода сообщения &amp;quot;&lt;strong&gt;Press any key to enter Debug Mode within 3 seconds&lt;/strong&gt;&amp;quot;. Нажимаем на клавиатуре любую клавишу и попадаем в режим отладки:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
Bootbase Version: V1.07 | 04/20/2005 13:38:02
RAM: Size = 32768 Kbytes
DRAM POST: Testing: 32768K
OK
FLASH: AMD 32M *1&lt;/pre&gt;&lt;pre&gt;
ZyNOS Version: V3.70(TX.0) | 07/06/2006 20:03:31&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #ff0000"&gt;Press any key to enter debug mode within 3 seconds.
&lt;/span&gt;..............
Enter Debug Mode&lt;/pre&gt;&lt;pre&gt;
ES-2024A&amp;gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Вводим комманду ATSH для вывода информации о програмном и хардварном&amp;nbsp;обеспечении коммутатора:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;ES-2024A&amp;gt; &lt;strong&gt;atsh&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;
ZyNOS Version          : &lt;span style="color: #ff0000"&gt;V3.70(TX.0)&lt;/span&gt; | 07/06/2006 20:03:31
Bootbase Version       : V1.07 | 04/20/2005 13:38:02
Serial Number          : 0Z0642011284
Vendor Name            : ZyXEL
Product Model          : &lt;span style="color: #ff0000"&gt;ES-2024A
&lt;/span&gt;ZyNOS ROM address      : bfc10000
System Type            : 8
MAC Address            : 001349E81C48
Default Country Code   : FF
Boot Module Debug Flag : 00
RomFile Version        : E8
RomFile Checksum       : 219a
ZyNOS Checksum         : 6276
SNMP MIB level &amp;amp; OID   : 060102030405060708091011121314151617181920
Main Feature Bits      : C0
Other Feature Bits     :
          DD 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
          00 00 00 00 00 00 00 00-00 00 13 00 00 00

OK&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Загружаем последнюю версию микропрограммного обеспечения с сайта производителя. В моем случае это файл &lt;strong&gt;&lt;a href="http://muff.kiev.ua/files/ES-2024A_3.90%28TX.3%29C0.zip"&gt;ES-2024A_3.90(TX.3)C0.zip&lt;/a&gt;&lt;/strong&gt;. Распаковываем архив. В архиве есть файл&amp;nbsp;конфигурации (rom-файл) с настройками по умолчанию.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Вводим комманду &lt;strong&gt;ATLC&lt;/strong&gt; для записи файлов:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;ES-2024A&amp;gt; &lt;strong&gt;atlc&lt;/strong&gt;&lt;br /&gt;
                Starting XMODEM upload (CRC mode)....&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Для отправки файлов через &lt;strong&gt;minicom&lt;/strong&gt; необходимо нажать сочетание клавиш &lt;strong&gt;Ctrl+A,S&lt;/strong&gt; и выбрать режим передачи &lt;strong&gt;xmodem&lt;/strong&gt;. Для того,&amp;nbsp;чтобы отметить файл,&amp;nbsp;выделяем его и жмем пробел. После этого жмем &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot; для начала передачи файла. Однако в моем случае отправка файла завершилась ошибкой с выводом сообщения:&amp;nbsp;&amp;quot;&lt;strong&gt;lsx: this program was never intended to be used setuid&lt;/strong&gt;&amp;quot;. Установим&amp;nbsp;SUID бит на исполняемый файл:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;chmod +s /usr/local/bin/lsx&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    После этого&amp;nbsp;повторим отправку файла. На этот раз отправка файла завершилась успешно. Собственно процесс отправки файла выглядит так:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
+------------[xmodem отправка - Нажмите CTRL-C для выхода]-------------+
|Sending 390TX3C0.rom, 384 blocks: Give your local XMODEM receive comma|
|nd now.                                                               |
|Xmodem sectors/kbytes sent:   0/ 0kRetry 0: NAK on sector             |
|Retry 0: NAK on sector                                                |
|Xmodem sectors/kbytes sent:  59/ 7k                                   |
|                                                                      |
|                                                                      |
+----------------------------------------------------------------------+&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    По завершению отправки файла,&amp;nbsp;коммутатор выводит уведомление о успешной загрузке:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;ES-2024A&amp;gt; &lt;strong&gt;atlc&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;
Starting XMODEM upload (CRC mode)....

Total  49152 bytes received.&lt;/pre&gt;&lt;pre&gt;
Erasing......&lt;br /&gt;............&lt;br /&gt;OK&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;После успешной записи файла вводим комманду &lt;strong&gt;ATGO&lt;/strong&gt; для перезагрузки коммутатора:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;ES-2024A&amp;gt; &lt;strong&gt;atgo&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;После перезагрузки коммутатора настройки по умолчанию следующие: &lt;br /&gt;
    - login: &lt;strong&gt;admin&lt;/strong&gt;&lt;br /&gt;
    - password: &lt;strong&gt;1234&lt;/strong&gt;&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/es-2024-sbros-v-defolt#comments</comments>
 <pubDate>Tue, 17 Apr 2012 10:43:34 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">459 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Linksys SRW224G4 - сброс в дефолт</title>
 <link>http://muff.kiev.ua/content/linksys-srw224g4-sbros-v-defolt</link>
 <description>&lt;p class="rtecenter"&gt;&lt;img alt="Linksys logo" width="140" height="50" src="http://muff.kiev.ua/files/LinksysLogo.jpg" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Перестраивая сеть одного из небольших офисов,&amp;nbsp;возникла необходимость в сбросе пароля на коммутатор &lt;strong&gt;Linksys SPS224G4&lt;/strong&gt;, поскольку предыдущий админ никаких реквизитов не оставил. Процедура аналогичная,&amp;nbsp;как и для &lt;a href="http://muff.kiev.ua/content/linksys-sps224g4-sbros-v-defolt"&gt;Linksys SPS224G4&lt;/a&gt;.&lt;/p&gt;
&lt;ol style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; font: 12px/16px Verdana, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Подключаемся к коммутатору через консольный порт (&lt;strong&gt;RS-232&lt;/strong&gt;) и запускаем утилиту&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;a style="color: rgb(2,122,198); text-decoration: none" href="http://muff.kiev.ua/content/minicom-rabotaem-s-oborudovaniem-cherez-rs232"&gt;&lt;strong&gt;minicom&lt;/strong&gt;&lt;/a&gt;. Настройки COM-порта:&lt;strong&gt;38400 8N1&lt;/strong&gt;.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Подаем питание на коммутатор.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Наблюдаем за процесом загрузки.&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
------ Performing the Power-On Self Test (POST) ------&lt;/pre&gt;&lt;pre&gt;
UART Channel Loopback Test........................PASS&lt;/pre&gt;&lt;pre&gt;
Testing the System SDRAM..........................PASS&lt;/pre&gt;&lt;pre&gt;
Boot1 Checksum Test...............................PASS&lt;/pre&gt;&lt;pre&gt;
Boot2 Checksum Test...............................PASS&lt;/pre&gt;&lt;pre&gt;
Flash Image Validation Test.......................PASS&lt;/pre&gt;&lt;pre&gt;
BOOT Software Version 1.0.2 Built  17-Aug-2006  14:55:46&lt;/pre&gt;&lt;pre&gt;
:::
:::        ::: :::       ::: :::     :::::  :::::::::: :::      ::: ::::::::::
:::        ::: :::::     ::: :::   :::::   ::::     ::: ::::  :::: ::::     :::
:::        ::: ::: :::   ::: ::::::::      ::::          ::::::::  ::::
:::        ::: :::   ::  ::: ::::::::::     ::::::::::     ::::     ::::::::::
:::        ::: :::    :::::: :::    ::::            :::    ::::             :::
:::::::::: ::: :::      :::: :::      :::: :::......:::    ::::    :::......:::
 ......... ... ...       ... ...       .... ..........     ....     ..........&lt;/pre&gt;&lt;pre&gt;
Linksys SmartSwitch based on 88E6218 with ARM946E-S.
32MByte SDRAM. I-Cache 8 KB. D-Cache 8 KB. Cache Enabled.&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #ff0000"&gt;Autoboot in 2 seconds - press RETURN or Esc. to abort and enter prom.&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    Дождавшись строки &amp;quot;&lt;strong&gt;Autoboot in 2 seconds - press RETURN or Esc. to abort and enter prom.&lt;/strong&gt;&amp;quot;, жмем на клавиатуре &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot; (либо же &amp;quot;&lt;strong&gt;Esc&lt;/strong&gt;&amp;quot;).&lt;br /&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Попадаем в &amp;quot;&lt;strong&gt;Startup Menu&lt;/strong&gt;&amp;quot;.&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Startup Menu&lt;/pre&gt;&lt;pre&gt;
[1]&amp;nbsp; Download Software&lt;br /&gt;[2]&amp;nbsp; Erase Flash File&lt;br /&gt;[3]&amp;nbsp; Password Recovery Procedure&lt;br /&gt;[4]&amp;nbsp; Enter Diagnostic Mode&lt;br /&gt;[5]&amp;nbsp; Set Terminal Baud-Rate&lt;br /&gt;[6]&amp;nbsp; Back&lt;br /&gt;&amp;nbsp;Enter your choice or press 'ESC' to exit:&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Жмем на клавиатуре кнопку &amp;quot;&lt;strong&gt;3&lt;/strong&gt;&amp;quot; (&lt;strong&gt;Password Recovery Procedure&lt;/strong&gt;), выполняя тем самым процедуру восстановления пароля.&amp;nbsp;Высвечивается информационное&amp;nbsp;сообщение &amp;quot;&lt;strong&gt;==== Press Enter To Continue ====&lt;/strong&gt;&amp;quot;. Соответственно жмем на клавиетуре &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot;.
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Жмем кнопку &amp;quot;&lt;strong&gt;6&lt;/strong&gt;&amp;quot; (&lt;strong&gt;Back&lt;/strong&gt;) для продолжения процесса загрузки.
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;По завершению загрузки коммутатор выводит &amp;quot;&lt;strong&gt;Login Screen&lt;/strong&gt;&amp;quot;, выдавая приглашение на ввод логина и пароля:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Login Screen&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ============&lt;/pre&gt;&lt;pre&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; User Name:&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Password:&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&lt;/pre&gt;&lt;pre&gt;
Action-&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="background-color: #99ccff"&gt;&lt;strong&gt;Edit&lt;/strong&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp; Execute&lt;/pre&gt;&lt;pre&gt;
ArrowKey/TAB/BACK=Move&amp;nbsp; SPACE=Toggle&amp;nbsp; ENTER=Select&amp;nbsp; ESC=Back&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Навигация довольно неудобная,&amp;nbsp;но можно справиться. Необходимо,&amp;nbsp;чтобы курсор был на кнопке &amp;quot;&lt;strong&gt;Edit&lt;/strong&gt;&amp;quot; (используйте клавиши навигации &amp;quot;вправо&amp;quot;-&amp;quot;влево&amp;quot;),&amp;nbsp;после&amp;nbsp;этого жмем клавишу &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot;&amp;nbsp;и&amp;nbsp;только после этого&amp;nbsp;можно ввести логин и пароль в&amp;nbsp;предложенную форму.&amp;nbsp;
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;По умолчанию используется логин &amp;quot;&lt;strong&gt;admin&lt;/strong&gt;&amp;quot; без пароля. Вводим логин &amp;quot;&lt;strong&gt;admin&lt;/strong&gt;&amp;quot; и жмем клавишу &amp;quot;&lt;strong&gt;Esc&lt;/strong&gt;&amp;quot;. С задержкой где-то в секунду, курсор перемещается на позицию &amp;quot;&lt;strong&gt;Edit&lt;/strong&gt;&amp;quot;. Жмем &amp;quot;вправо&amp;quot;, курсор перемещается на позицию &amp;quot;&lt;strong&gt;Execute&lt;/strong&gt;&amp;quot;.&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Login Screen&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ============&lt;/pre&gt;&lt;pre&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; User Name:&amp;nbsp; admin&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Password:&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&lt;/pre&gt;&lt;pre&gt;
Action-&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Edit&amp;nbsp;&amp;nbsp; &lt;span style="background-color: #99ccff"&gt;Execute&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;
ArrowKey/TAB/BACK=Move&amp;nbsp; SPACE=Toggle&amp;nbsp; ENTER=Select&amp;nbsp; ESC=Back&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;После нажатия клавиши &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot; попадаем в &lt;strong&gt;Switch Main Menu&lt;/strong&gt;.&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Switch Main Menu&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ================&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. System Configuration Menu&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Port Status&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3. Port Configuration&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4. Help&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0. logout&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Однако,&amp;nbsp;предоставленный функционал более чем &amp;quot;беден&amp;quot; и не представляет особого интереса. Для включения&amp;nbsp;полноценного&amp;nbsp;&lt;strong&gt;CLI&lt;/strong&gt; необходимо нажать сочетание клавиш &amp;quot;&lt;strong&gt;Ctrl+z&lt;/strong&gt;&amp;quot;. После этого в строке приглашения вводим комманду &amp;quot;&lt;strong&gt;lcli&lt;/strong&gt;&amp;quot;, жмем на клавиатуре &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot; и получаем полнофункциональный CLI:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
&amp;gt;lcli

console&amp;gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify" style="text-align: justify"&gt;Для получения прав суперпользователя необходимо воспользоваться командой &amp;quot;enable&amp;quot;:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="95%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
console&amp;gt; &lt;span style="color: #ff0000"&gt;enable&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;
console#&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;С тем,&amp;nbsp;что делать далее - думаю проблем не возникнет. Можно создать/изменить пользователя и &lt;strong&gt;enable password&lt;/strong&gt;, либо же вообще вообще удалить конфигурацию,&amp;nbsp;воспользовавшись коммандой &lt;strong&gt;delete startup-config&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Также стоит отметить,&amp;nbsp;что с коммутатором &lt;strong&gt;Linksys SPS224G4&lt;/strong&gt; при удаленном конфигурировании стоит вести себя довольно осторожно,&amp;nbsp;поскольку все изменения он сразу вносит в &lt;strong&gt;startup-config&lt;/strong&gt;, соответственно перезагрузка&amp;nbsp;по питанию&amp;nbsp;ничего не изменит, если допущена ошибка в конфигурировании.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/linksys-srw224g4-sbros-v-defolt#comments</comments>
 <pubDate>Sat, 14 Apr 2012 21:26:11 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">458 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Cisco Catalyst 2960g - обновление програмного обеспечения (IOS)</title>
 <link>http://muff.kiev.ua/content/cisco-catalyst-2960g-obnovlenie-programnogo-obespecheniya-ios</link>
 <description>&lt;p class="rtecenter"&gt;&lt;img alt="Cisco логотип" width="140" height="102" src="http://muff.kiev.ua/files/Cisco-logo.gif" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;После демонтирования одной из техплощадок на руках оказался незадействованный коммутатор &lt;strong&gt;Cisco Catalyst WS-C2960G-24TC-L&lt;/strong&gt;. Решил перед установкой обновить ПО на этом коммутаторе. Заодно решил проверить,&amp;nbsp;как проходит обновление ПО&amp;nbsp;с сохранением текущей конфигурации.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Подключаемся через последовательный интерфейс к консоли управления коммутатора. Распиновка консольного кабеля такая:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/console-zte2928.jpg"&gt;&lt;img class="imgp_img" alt="zte 2928 - консольный кабель" width="245" height="250" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/console-zte2928.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Подключаемся с&amp;nbsp;использованием утилиты&amp;nbsp;&lt;strong&gt;&lt;a href="http://muff.kiev.ua/content/minicom-rabotaem-s-oborudovaniem-cherez-rs232"&gt;minicom&lt;/a&gt;&lt;/strong&gt;. Параметры настройки &lt;strong&gt;COM&lt;/strong&gt;-порта &lt;strong&gt;9600 8N1&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Поскольку коммутатор уже имеет определенные настройки, часть комманд может показаться лишней,&amp;nbsp;но&amp;nbsp;это не&amp;nbsp;так. Итак,&amp;nbsp;порт &lt;strong&gt;Gi0/1&lt;/strong&gt; коммутатора скоммутируем в локальную сеть. Также для работы необходим настроенный &lt;strong&gt;TFTP&lt;/strong&gt;-сервер. Статья по настройке&amp;nbsp;&lt;strong&gt;TFTP&lt;/strong&gt;-сервера -&amp;nbsp;&lt;strong&gt;&lt;a href="http://muff.kiev.ua/content/tftp-hpa-nastroika-tftp-servera-tftp-hpa"&gt;здесь&lt;/a&gt;&lt;/strong&gt;.&amp;nbsp;&lt;strong&gt;IP&lt;/strong&gt;-адрес &lt;strong&gt;TFTP&lt;/strong&gt;-сервера - &lt;strong&gt;192.168.192.55&lt;/strong&gt;, соответственно настроим коммутатор на работу с этой сетью:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Catalyst-2960g#&lt;strong&gt;configure terminal&lt;br /&gt;
            &lt;/strong&gt;Enter configuration commands, one per line. End with CNTL/Z.&lt;br /&gt;
            Catalyst-2960g(config)#&lt;strong&gt;interface gigabitEthernet 0/1&lt;/strong&gt;&lt;br /&gt;
            Catalyst-2960g(config-if)#&lt;strong&gt;switchport access vlan 1&lt;/strong&gt;&lt;br /&gt;
            Catalyst-2960g(config-if)#&lt;strong&gt;switchport mode access&lt;br /&gt;
            &lt;/strong&gt;Catalyst-2960g(config-if)#&lt;strong&gt;no shutdown&lt;br /&gt;
            &lt;/strong&gt;Catalyst-2960g(config-if)#&lt;strong&gt;exit&lt;/strong&gt;&lt;strong&gt;&lt;br /&gt;
            &lt;/strong&gt;Catalyst-2960g(config)#&lt;strong&gt;interface vlan 1&lt;br /&gt;
            &lt;/strong&gt;Catalyst-2960g(config)#&lt;strong&gt;ip address 192.168.192.222 255.255.255.0&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Для хранения образа &lt;strong&gt;IOS&lt;/strong&gt; может использоваться дисковая файловая система или флэш-система. Типичные файловые системы, поддерживаемые маршрутизаторами &lt;strong&gt;Cisco&lt;/strong&gt;, могут обозначаться следующими префиксами: flash:, slot0:, slot1:, disk0: и disk1:. Имейте ввиду,&amp;nbsp;что для хранения образа &lt;strong&gt;IOS&lt;/strong&gt; файловая система должна иметь достаточно свободного места. Чтобы ознакомиться с доступными файловыми системами и проверить наличие свободного места,&amp;nbsp;воспользуемся коммандой &lt;strong&gt;show&amp;nbsp;file&amp;nbsp;systems&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;Catalyst-2960g#&lt;strong&gt;show file systems&lt;br /&gt;
            &lt;/strong&gt;File Systems:&lt;/div&gt;
&lt;pre&gt;
     Size(b)     Free(b)      Type  Flags  Prefixes
*   32514048    24777728     flash     rw   flash:
           -           -    opaque     rw   vb:
           -           -    opaque     ro   bs:
           -           -    opaque     rw   system:
       65536       49468     nvram     rw   nvram:
           -           -    opaque     ro   xmodem:
           -           -    opaque     ro   ymodem:
           -           -    opaque     rw   null:
           -           -   network     rw   tftp:
           -           -   network     rw   rcp:
           -           -   network     rw   http:
           -           -   network     rw   ftp:
           -           -    opaque     ro   cns:&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Выполним обзор файлов на &lt;strong&gt;flash&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Catalyst-2960g#&lt;strong&gt;dir&lt;br /&gt;
            &lt;/strong&gt;Directory of flash:/&lt;/p&gt;
&lt;pre&gt;
    3  -rwx     4670535   Mar 1 1993 02:06:42 +02:00  c2960-lanbase-mz.122-25.SEE2.bin
    4  -rwx       15989   Mar 1 1993 03:07:19 +02:00  config.text
    5  -rwx        9976   Mar 1 1993 02:01:15 +02:00  vlan.dat
    6  -rwx          27   Mar 1 1993 03:07:19 +02:00  private-config.text

32514048 bytes total (24777728 bytes free)&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Предварительно скопируем конфигурацию и старый &lt;strong&gt;IOS&lt;/strong&gt; на &lt;strong&gt;TFTP&lt;/strong&gt;-сервер :&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Catalyst-2960g#&lt;strong&gt;copy running-config tftp:&lt;br /&gt;
            &lt;/strong&gt;Address or name of remote host []? &lt;strong&gt;192.168.192.55&lt;br /&gt;
            &lt;/strong&gt;Destination filename [catalyst-2960g-confg]? &lt;strong&gt;catalyst-2960g-confg&lt;br /&gt;
            &lt;/strong&gt;!!!!!&lt;br /&gt;
            15989 bytes copied in 2.257 secs (7084 bytes/sec)&lt;/p&gt;
&lt;p&gt;Catalyst-2960g#&lt;strong&gt;copy c2960-lanbase-mz.122-25.SEE2.bin tftp:&lt;/strong&gt;&lt;br /&gt;
            Address or name of remote host []? &lt;strong&gt;192.168.192.55&lt;br /&gt;
            &lt;/strong&gt;Destination filename [c2960-lanbase-mz.122-25.SEE2.bin]? &lt;strong&gt;c2960-lanbase-mz.122-25.SEE2.bin&lt;br /&gt;
            &lt;/strong&gt;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            4670535 bytes copied in 9.211 secs (507061 bytes/sec)&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Процесс копирования сопровождается выводом в терминал символов &amp;quot;!&amp;quot;. Один знак &amp;quot;!&amp;quot; соответствует десяти успешно скопированным пакетам.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Теперь пора положить архив &lt;strong&gt;IOS&lt;/strong&gt; на&amp;nbsp;&lt;span id="1333728969361S" style="display: none"&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;TFTP&lt;/strong&gt;-сервер для подальшей его загрузки на коммутатор.&amp;nbsp;Название&amp;nbsp;нового&amp;nbsp;файла &lt;strong&gt;IOS&lt;/strong&gt; - &lt;strong&gt;c2960-lanbasek9-mz.122-50.SE1.bin&lt;/strong&gt;. Размер образа - &lt;strong&gt;8055039&lt;/strong&gt; байт. Размер свободного места на флеше в моем случае - &lt;strong&gt;24777728&lt;/strong&gt; байт,&amp;nbsp;так что без проблем &amp;quot;помещаются&amp;quot; два образа. Если же свободного места на флеше не хватает, то предварительно необходимо удалить старый файл &lt;strong&gt;IOS&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Удаление отдельно взятого файла:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Catalyst-2960g#&lt;strong&gt;delete flash://c2960-lanbase-mz.122-25.SEE2.bin&lt;br /&gt;
            &lt;/strong&gt;Delete filename [c2960-lanbase-mz.122-25.SEE2.bin]? &lt;strong&gt;c2960-lanbase-mz.122-25.SEE2.bin&lt;br /&gt;
            &lt;/strong&gt;Delete flash:/c2960-lanbase-mz.122-25.SEE2.bin? [confirm] &lt;strong&gt;y&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Если образ хранится в виде каталога,&amp;nbsp;то для удаления воспользуемся следующей коммандой:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Catalyst-2960g#&lt;strong&gt;delete /force /recursive flash://c2960-lanbase-mz.122-25.SEE2&lt;/strong&gt;&lt;br /&gt;
            Delete filename [c2960-lanbasek9-mz.122-50.SE1]? &lt;strong&gt;c2960-lanbase-mz.122-25.SEE2&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p class="rtejustify"&gt;Выполним загрузку &lt;strong&gt;IOS&lt;/strong&gt; с &lt;strong&gt;TFTP&lt;/strong&gt;-сервера на коммутатор:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;Catalyst-2960g#&lt;strong&gt;copy tftp://192.168.192.55/c2960-lanbasek9-mz.122-50.SE1.bin flash://c2960-lanbasek9-mz.122-50.SE1.bin&lt;br /&gt;
            &lt;/strong&gt;Destination filename [c2960-lanbasek9-mz.122-50.SE1.bin]? &lt;strong&gt;c2960-lanbasek9-mz.122-50.SE1.bin&lt;br /&gt;
            &lt;/strong&gt;Accessing tftp://192.168.192.55/c2960-lanbasek9-mz.122-50.SE1.bin...&lt;br /&gt;
            Loading c2960-lanbasek9-mz.122-50.SE1.bin from 192.168.192.55 (via Vlan1): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;/div&gt;
&lt;div&gt;!!!!!!!O!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;/div&gt;
&lt;div&gt;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;/div&gt;
&lt;div&gt;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;/div&gt;
&lt;div&gt;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!O!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!O!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;br /&gt;
            [OK - 8055039 bytes]&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;8055039 bytes copied in 111.082 secs (72514 bytes/sec)&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;После загрузки файла необходимо проверить его целостность. Для этого подсчитаем контрольную сумму и сравним со значением, которое получено при загрузке файла с сайта производителя. Контрольная сумма предоставленная производителем: &lt;strong&gt;2e5d03420a518b0783d84c31e047b50b&lt;/strong&gt;. Проверяем контрольную сумму загруженного файла на коммутаторе:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Catalyst-2960g#&lt;strong&gt;verify /md5 flash:c2960-lanbasek9-mz.122-50.SE1.bin&lt;/strong&gt;&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            ..................................................................................................................................&lt;br /&gt;
            .................Done!&lt;br /&gt;
            verify /md5 (flash:c2960-lanbasek9-mz.122-50.SE1.bin) = 2e5d03420a518b0783d84c31e047b50b&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Контрольная сумма совпадает,&amp;nbsp;значит загрузка выполнена корректно. Указываем коммутатору необходимость загрузки системы с нового образа,&amp;nbsp;не забыв предварительно отключить загрузку предыдущего образа:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Catalyst-2960g(config)#&lt;strong&gt;no boot system&lt;br /&gt;
            &lt;/strong&gt;Catalyst-2960g(config)#&lt;strong&gt;boot system flash:/c2960-lanbasek9-mz.122-50.SE1.bin&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Проверяем конфигурацию загрузчика:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Catalyst-2960g#&lt;strong&gt;show boot&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;
BOOT path-list      : flash:/c2960-lanbasek9-mz.122-50.SE1.bin
Config file         : flash:/config.text
Private Config file : flash:/private-config.text
Enable Break        : no
Manual Boot         : no
HELPER path-list    :
Auto upgrade        : yes
NVRAM/Config file
      buffer size:   65536&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Все в порядке... Сохраним параметры и выполним перезагрузку коммутатора:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Catalyst-2960g#&lt;strong&gt;copy running-config startup-config&lt;br /&gt;
            &lt;/strong&gt;Destination filename [startup-config]?&lt;br /&gt;
            Building configuration...&lt;br /&gt;
            [OK]&lt;br /&gt;
            Catalyst-2960g#&lt;strong&gt;reload&lt;/strong&gt;&lt;br /&gt;
            Proceed with reload? [confirm] &lt;strong&gt;y&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;После ребута коммутатор загрузится уже с новым &lt;strong&gt;IOS&lt;/strong&gt;, и конфигурация коммутатора осталась прежней.&amp;nbsp;Дополнительно можно воспользоваться коммандой &lt;strong&gt;show version&lt;/strong&gt; для просмотра детальной информации о коммутаторе&amp;nbsp;и&amp;nbsp;&lt;strong&gt;IOS&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/cisco-catalyst-2960g-obnovlenie-programnogo-obespecheniya-ios#comments</comments>
 <pubDate>Mon, 09 Apr 2012 22:44:48 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">457 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>SMTP - коды ответов сервера</title>
 <link>http://muff.kiev.ua/content/smtp-kody-otvetov-servera</link>
 <description>&lt;p class="rtejustify"&gt;Попробуем сразу &amp;quot;взять быка за рога&amp;quot;...&lt;/p&gt;
&lt;p class="rtejustify"&gt;Как известно,&amp;nbsp;каждый ответ SMTP-сервера клиенту сопровождается трехзначным кодом. Каждая цифра в коде ответа сервера имеет свое назначение:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;первая цифра обозначает успех, неудачу или незавершенность команды;&lt;/li&gt;
&lt;li&gt;вторая цифра уточняет тип ответа (например, ошибка почтовой системы или синтаксическая ошибка команды);&lt;/li&gt;
&lt;li&gt;третья цифра служит для лучшей градации информации.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Первая цифра (существует 5 вариантов)&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;strong&gt;1yz&lt;/strong&gt;&lt;/span&gt;&lt;strong&gt; &amp;ndash; &lt;em&gt;положительный предварительный отклик&lt;/em&gt;.&lt;br /&gt;
&lt;/strong&gt;Сервер воспринял команду, но находится в ожидании подтверждения на продолжение или отказ от выполнения запрошенных действий.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;2yz&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; положительный отклик &lt;br /&gt;
&lt;/strong&gt;&lt;/em&gt;Запрошенное действие было выполнено и сервер готов к принятию новой команды.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;3yz&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; положительный промежуточный отклик&lt;/strong&gt;&lt;/em&gt; &lt;br /&gt;
Сервер воспринял команду, но для завершения действия ожидает дальней информации.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;4yz&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; временный негативный отклик&lt;/strong&gt;&lt;/em&gt; &lt;br /&gt;
Команда не принята, и запрошенные действия не были исполнены. Однако ошибочное состояние временное, и действие может быть запрошено еще раз.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;5yz&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; негативный отклик&lt;/strong&gt;&lt;/em&gt; &lt;br /&gt;
Команда не принята, и запрошенные действия не были исполнены.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;em&gt;&lt;strong&gt;Вторая цифра (категория ошибки)&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;x0z&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; Синтаксис&lt;/strong&gt;&lt;/em&gt; &lt;br /&gt;
Отклик обозначает синтаксическую ошибку команды; команда может быть синтаксически правильная, но отклик нельзя отнести к другим категориям; нереализованная команда.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;x1z&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; Информация&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
Отклик на запрос информации, например, статус или помощь.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;x2z&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; Соединение&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
Отклики, относящиеся к каналу передачи данных.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;x3z&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; Не определены&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;x4z&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; Не определены&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;x5z&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;strong&gt; &amp;ndash; Почтовая система&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
Отклики указывают состояние принимающей почтовой системы в отношении запрошенной передачи или другого действия почтовой системы.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Третья цифра служит для лучшей градации значения в каждой категории, определяемой второй цифрой. Перечисление кодов откликов:&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;strong&gt;211 &lt;/strong&gt;&lt;/span&gt;Состояние системы или системная справка. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;214 &lt;/strong&gt;&lt;/span&gt;Информация о том, как работать с сервером, описание нестандартных команд и т.д. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;220 &lt;/strong&gt;&lt;/span&gt;Служба готова к работе. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;221 &lt;/strong&gt;&lt;/span&gt;Служба закрывает канал передачи данных. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;235 &lt;/strong&gt;&lt;/span&gt;Успешная аутентификация на сервере. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;250 &lt;/strong&gt;&lt;/span&gt;Выполнение почтовой команды успешно окончено. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;251 &lt;/strong&gt;&lt;/span&gt;Нелокальный пользователь. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;252 &lt;/strong&gt;&lt;/span&gt;Невозможно проверить наличие почтового ящика для пользователя, но сообщение принято, и сервер попытается его доставить.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;strong&gt;354 &lt;/strong&gt;&lt;/span&gt;Начало приема сообщения. Сообщение должно заканчиваться точкой на новой строке и новой строкой.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;strong&gt;421 &lt;/strong&gt;&lt;/span&gt;Работа с сервером невозможна. Произойдет закрытие канала связи (может быть ответом на любую команду, если серверу нужно закрыть соединение). &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;450 &lt;/strong&gt;&lt;/span&gt;Запрошенная команда не принята &amp;ndash; недоступен почтовый ящик (почтовый ящик временно занят) . &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;451 &lt;/strong&gt;&lt;/span&gt;Запрошенная команда прервана &amp;ndash; локальная ошибка при обработке команды. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;452 &lt;/strong&gt;&lt;/span&gt;Запрошенная команда невозможна &amp;ndash; недостаточно дискового пространства. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;454 &lt;/strong&gt;&lt;/span&gt;Аутентификация невозможна по причине временного сбоя сервера.&lt;/p&gt;
&lt;p class="rtejustify rteindent1"&gt;&lt;span style="color: #ff0000"&gt;&lt;strong&gt;500 &lt;/strong&gt;&lt;/span&gt;Синтаксическая ошибка, команда не распознана (также этот отклик может означать, что длина команды слишком большая). &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;501 &lt;/strong&gt;&lt;/span&gt;Синтаксическая ошибка в команде или аргументе. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;502 &lt;/strong&gt;&lt;/span&gt;Команда распознана, но её реализация сервером не поддерживается. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;503 &lt;/strong&gt;&lt;/span&gt;Неверная последовательность команд. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;504 &lt;/strong&gt;&lt;/span&gt;Параметр команды сервером не поддерживается. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;530 &lt;/strong&gt;&lt;/span&gt;Сервер требует аутентификации для выполнения запрошенной команды. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;534 &lt;/strong&gt;&lt;/span&gt;Данный отклик означает, что выбранный механизм аутентификации для данного пользователя является не достаточно надежным. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;535 &lt;/strong&gt;&lt;/span&gt;Аутентификация отклонена сервером (например, ошибка в кодировании данных). &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;538 &lt;/strong&gt;&lt;/span&gt;Выбранный метод аутентификации возможен только при зашифрованном канале связи. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;550 &lt;/strong&gt;&lt;/span&gt;Запрошенная операция невозможна &amp;ndash; почтовый ящик недоступен (почтовый ящик не найден или нет доступа; команда отклонена локальной политикой безопасности). &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;551 &lt;/strong&gt;&lt;/span&gt;Нелокальный пользователь. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;552 &lt;/strong&gt;&lt;/span&gt;Запрошенная почтовая команда прервана &amp;ndash; превышено выделенное на сервере пространство. &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;553 &lt;/strong&gt;&lt;/span&gt;Запрошенная почтовая команда прервана &amp;ndash; недопустимое имя почтового ящика (возможно синтаксическая ошибка в имени). &lt;br /&gt;
&lt;span style="color: #ff0000"&gt;&lt;strong&gt;554 &lt;/strong&gt;&lt;/span&gt;Неудачная транзакция или отсутствие SMTP сервиса (при открытии сеанса передачи данных).&lt;/p&gt;
&lt;p class="rtejustify"&gt;Примеры ответов наводить не буду - их можно обнаружить в логах почтового сервера. Либо же выполните простейшую &lt;a href="http://muff.kiev.ua/content/primer-smtp-sessii"&gt;SMTP-сесию через &lt;strong&gt;telnet&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/smtp-kody-otvetov-servera#comments</comments>
 <pubDate>Thu, 05 Apr 2012 14:26:37 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">456 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Drupal - Борьба со СПАМом. Модуль NotCaptcha</title>
 <link>http://muff.kiev.ua/content/drupal-borba-so-spamom-modul-notcaptcha</link>
 <description>&lt;p class="rtejustify"&gt;Уже писал о том, что спамеры публикуют комментарии,&amp;nbsp;минуя капчу. Как вариант - запретить размещение ссылок в комментариях для незарегистрированных пользователей, используя модуль &lt;a href="http://muff.kiev.ua/content/drupal-borba-so-spamom-modul-blockanonymouslinks"&gt;&lt;strong&gt;blockanonymouslinks&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Однако на просторах Интернета нашел еще один интересный модуль - &lt;strong&gt;NotCaptcha&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Этот модуль - улучшенная реализация &lt;strong&gt;CAPTCHA&lt;/strong&gt;. Переписан под &lt;strong&gt;Drupal&lt;/strong&gt; из &lt;strong&gt;Wordpress&lt;/strong&gt;. Еще одним существенным отличием является повышенная безопасность, реализация которой выполнена на базе модуля &lt;strong&gt;PHP mcrypt&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Требования к системе следующие:&lt;/p&gt;
&lt;ul&gt;
&lt;li class="rtejustify"&gt;&lt;strong&gt;Drupal&lt;/strong&gt; с включенным модулем &lt;strong&gt;CAPTCHA&lt;/strong&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;модуль &lt;strong&gt;PHP mcrypt&lt;/strong&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;модуль &lt;strong&gt;PHP GD&lt;/strong&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;поддержка &lt;strong&gt;JavaScript&lt;/strong&gt; в браузере&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="rtejustify"&gt;Установка и настройка выполняется в следующем порядке.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Скачиваем архив модуля&amp;nbsp;&lt;a href="http://muff.kiev.ua/files/notcaptcha-6.x-1.0.2.tar.gz"&gt;notcaptcha-6.x-1.0.2.tar.gz&lt;/a&gt; и распаковываем его в &lt;em&gt;&lt;strong&gt;/sites/all/modules&lt;/strong&gt;&lt;/em&gt;. После этого необходимо включить модуль на странице управления модулями -&amp;nbsp; &lt;em&gt;&lt;strong&gt;Управление =&amp;gt; Конструкция сайта =&amp;gt; Модули&lt;/strong&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Настройку модуля можно выполнить на странице управления - &lt;strong&gt;&lt;em&gt;Управление =&amp;gt; Управление пользователями =&amp;gt; CAPTCHA =&amp;gt;&amp;nbsp;NotCaptcha CAPTCHA&lt;/em&gt;&lt;/strong&gt;. Советую в обязательном порядке изменить параметр &lt;strong&gt;NotCaptcha key&lt;/strong&gt;. Качество &lt;strong&gt;JPEG&lt;/strong&gt; выставляем по собственному желанию - лично я выставляю на 100%.&lt;/p&gt;
&lt;p class="rtejustify"&gt;После непосредственной настройки &lt;strong&gt;NotCaptcha&lt;/strong&gt;, идем в настройки &lt;strong&gt;CAPTCHA&lt;/strong&gt; и параметр&amp;nbsp;&lt;strong&gt;&amp;quot;Default challenge type&amp;quot;&lt;/strong&gt; выставляем в значение &lt;strong&gt;NotCaptcha&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Скриншот работы модуля:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;img alt="NotCaptcha" width="302" height="108" src="http://muff.kiev.ua/files/NotCaptcha01.PNG" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Количество изображений в версии NotCaptcha 1.0.2 - &lt;strong&gt;33 шт&lt;/strong&gt;. Доступные изображения:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/NotCaptha-animals1.png"&gt;&lt;img class="imgp_img" alt="NotCaptcha" width="200" height="20" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/NotCaptha-animals1.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/NotCaptha-colourful1.png"&gt;&lt;img class="imgp_img" alt="NotCaptcha" width="200" height="20" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/NotCaptha-colourful1.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/NotCaptha-holloween1.png"&gt;&lt;img class="imgp_img" alt="NotCaptcha" width="200" height="20" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/NotCaptha-holloween1.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/NotCaptha-objects1.png"&gt;&lt;img class="imgp_img" alt="NotCaptcha" width="200" height="20" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/NotCaptha-objects1.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Довольно интересный способ защиты от ботов. Теперь осталось проверить,&amp;nbsp;насколько он надежный. Отключил модули&amp;nbsp;&amp;nbsp;&lt;strong&gt;reCAPTCHA&lt;/strong&gt; и &lt;strong&gt;BlockAnonymousLinks&lt;/strong&gt;. Посмотрим,&amp;nbsp;появится ли СПАМ в комментариях. При использовании только модуля &lt;strong&gt;CAPTCHA&lt;/strong&gt; такое бывало.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Непосредственно просмотреть работу модуля можно нажав на ссылку &lt;strong&gt;&amp;quot;Добавить комментарий&amp;quot;&lt;/strong&gt; внизу страницы...&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/drupal-borba-so-spamom-modul-notcaptcha#comments</comments>
 <pubDate>Wed, 28 Mar 2012 21:00:55 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">455 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Mtop - мониторинг нагрузки на MySQL-сервер</title>
 <link>http://muff.kiev.ua/content/mtop-monitoring-nagruzki-na-mysql-server</link>
 <description>&lt;p class="rtejustify"&gt;При работе с &lt;strong&gt;MySQL&lt;/strong&gt; довольно полезно следить за нагрузкой,&amp;nbsp;которая ложится на &lt;strong&gt;MySQL&lt;/strong&gt;-сервер.&amp;nbsp;В портах есть полезная утилита - &lt;strong&gt;mtop&lt;/strong&gt;. Она в режиме реального времени отслеживает и показывает текущие запросы к безе данных, время их выполнения, статус &lt;strong&gt;MySQL&lt;/strong&gt;-сервера в удобной форме.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Итак,&amp;nbsp;выполним установку утилиты из системы портов:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cd /usr/ports/databases/mtop &amp;amp;&amp;amp; make install clean &amp;amp;&amp;amp; rehash&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;По завершению установки создадим &lt;strong&gt;MySQL&lt;/strong&gt;-пользователя, которому дадим права на просмотр процессов &lt;strong&gt;MySQL&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;mysql&amp;gt; &lt;strong&gt;grant process on *.* to &lt;/strong&gt;&lt;strong&gt;'mtop'@'localhost'&lt;/strong&gt;&lt;strong&gt; identified by '&lt;span style="color: #ff0000"&gt;mtop_passwd_here&lt;/span&gt;';&lt;br /&gt;
            &lt;/strong&gt;Query OK, 0 rows affected (0.11 sec)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;На этом все &amp;quot;приготовления&amp;quot; можно считать законченными. Запустим &lt;strong&gt;mtop&lt;/strong&gt; и посмотрим на результат. Параметри запуска следующие:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;mtop -dbu mtop -p &lt;span style="color: #ff0000"&gt;mtop_passwd_here&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;Если не указывать ключ&amp;nbsp;&lt;strong&gt;-dbu&lt;/strong&gt;, то &lt;strong&gt;mtop&lt;/strong&gt; будет пытаться подключаться от имени пользователя &lt;strong&gt;mysqltop&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Теперь можно наблюдать за динамикой SQL-запросов. При этом быстрые запросы отображаются белым цветом и потом, по мере роста длительности выполнения цвет начинает меняться, если запрос выполняется более 10 секунд он окрашивается фиолетовым, более 20 секунд&amp;nbsp;- желтым, более 40 секунд&amp;nbsp;- красным. Это значения по умолчанию, но их можно переназначить.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Утилита очень хорошо визуально демонстрирует проблемные места в работе &lt;strong&gt;MySQL&lt;/strong&gt;. Так же очень хорошо видны такие показатели как число процессов (&lt;strong&gt;threads&lt;/strong&gt;) и сколько из них активны (&lt;strong&gt;running&lt;/strong&gt;), сколько процессов закешированны(&lt;strong&gt;cached&lt;/strong&gt;), сколько запросов поступило и сколько из них медленных(&lt;strong&gt;Queries/slow&lt;/strong&gt;) и какова эффективность кеша запросов (&lt;strong&gt;Cache Hit&lt;/strong&gt;).&lt;/p&gt;
&lt;p class="rtejustify"&gt;Для того,&amp;nbsp;чтобы узнать все возможности и ключи запуска&amp;nbsp;утилиты - настоятельно рекомендую ознакомиться со страницей руководства.&lt;/p&gt;
&lt;p class="rtejustify"&gt;А чтобы ознакомиться с доступными ключами&amp;nbsp;во время работы утилиты, необходимо нажать &amp;quot;&lt;strong&gt;?&lt;/strong&gt;&amp;quot;. В результате получаем такую подсказку:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
q - quit
? - help; show this text
f - flush status
F - fold/unfold column names in select statement display
k - kill processes; send a kill to a list of ids
s - change the number of seconds to delay between updates
m - toggle manual refresh mode on/off
d - filter display with regular expression (user/host/db/command/state/info)
h - display process for only one host
u - display process for only one user
i - toggle all/non-Sleeping process display
o - reverse the sort order
e - explain a process; show query optimizer info
t - show mysqld stats (show status/mysqladmin ext)
T - show mysqld important stats
v - show mysqld variables (show variables/mysqladmin vars)
z - zoom in on a process, show sql statement detail
r - show replication status for master/slaves&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Думаю,&amp;nbsp;что переводить нету смысла,&amp;nbsp;и так все понятно. Ну и напоследок - скриншоты вывода утилиты &lt;strong&gt;mtop&lt;/strong&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/mtop01.png"&gt;&lt;img class="imgp_img" alt="Mtop" width="200" height="51" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/mtop01.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/mtop05.png"&gt;&lt;img class="imgp_img" alt="MTOP" width="200" height="36" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/mtop05.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/mtop06.png"&gt;&lt;img class="imgp_img" alt="MTOP" width="200" height="42" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/mtop06.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/mtop02.png"&gt;&lt;img class="imgp_img" alt="MTOP" width="200" height="181" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/mtop02.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/mtop03.png"&gt;&lt;img class="imgp_img" alt="MTOP" width="200" height="112" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/mtop03.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/mtop04.png"&gt;&lt;img class="imgp_img" alt="MTOP" width="200" height="112" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/mtop04.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <pubDate>Sun, 25 Mar 2012 00:27:23 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">416 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>BGP - Looking Glass для BGP-роутера</title>
 <link>http://muff.kiev.ua/content/bgp-looking-glass-dlya-bgp-routera</link>
 <description>&lt;p class="rtejustify"&gt;Возникла&amp;nbsp;необходимость в наличии&amp;nbsp;&lt;strong&gt;Looking Glass&lt;/strong&gt; для отображения информации, как с&amp;nbsp;аппаратных маршрутизаторов,&amp;nbsp;так и&amp;nbsp;с&amp;nbsp;маршрутизаторов под управлением &lt;strong&gt;FreeBSD&lt;/strong&gt;, с установленным демоном маршрутизации &lt;strong&gt;&lt;a href="http://muff.kiev.ua/content/quagga-prevrashchenie-servera-v-polnofunktsionalnyi-marshrutizator"&gt;Quagga&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Использовать будем&amp;nbsp;&lt;strong&gt;Looking Glass&lt;/strong&gt; от&amp;nbsp;&lt;strong&gt;Cougar&lt;/strong&gt;. Дополнительная информация - на &lt;a href="http://www.version6.net"&gt;сайте проекта&lt;/a&gt;. Последняя версия -&amp;nbsp;1.9 от 25 ноября 2004 года. Релиз давно не обновлялся,&amp;nbsp;но данный &lt;strong&gt;Looking Glass&lt;/strong&gt; используется повсеместно.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Скачиваем и распаковываем архив:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;fetch &lt;/strong&gt;&lt;a href="http://muff.kiev.ua/files/lg-1.9.tar.bz2"&gt;&lt;strong&gt;http://muff.kiev.ua/files/lg-1.9.tar.bz2&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;br /&gt;
            &lt;/strong&gt;# &lt;strong&gt;tar -xzf lg-1.9.tar.bz2&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Пора посмотреть,&amp;nbsp;что имеем в наличии:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;#&amp;nbsp;&lt;strong&gt;cd lg-1.9 &amp;amp;&amp;amp; ls&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;
total 146
drwxr-xr-x  2 www  100    512 25 ноя  2004 .
drwxr-xr-x  7 www  www    512  8 янв 01:36 ..
-rw-r--r--  1 www  100   3308 25 ноя  2004 CHANGELOG
-rw-r--r--  1 www  100  17976 16 июл  2002 COPYING
-rw-r--r--  1 www  100   5161 15 июн  2004 README
-rw-r--r--  1 www  100    256 15 июн  2004 as.txt
-rw-r--r--  1 www  100  50998 28 сен  2004 communities.txt
-rw-r--r--  1 www  100   1406 16 июл  2002 favicon.ico
-rwxr-xr-x  1 www  100  36818 25 ноя  2004 lg.cgi
-rw-r--r--  1 www  100  14691 25 ноя  2004 lg.conf
-rwxr-xr-x  1 www  100   2428 15 июн  2004 makeaslist.pl
-rwxr-xr-x  1 www  100   3718 15 июн  2004 makedb.pl&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Итак,&amp;nbsp;вникнем в README,&amp;nbsp;чтобы понять что нужно делать дальше... Имеем в наличии пошаговую инструкцию... Ну что ж,&amp;nbsp;начнем.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Cоздаем каталог для размещения файлов &lt;strong&gt;Looking Glass&lt;/strong&gt;.&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;mkdir /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Копируем файлы lg.cgi, lg.conf и favicon.ico в этот каталог. Выставляем необходимые права доступа:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;cp lg.cgi lg.conf favicon.ico /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;br /&gt;
                &lt;/strong&gt;&lt;span style="color: #000000"&gt;# &lt;/span&gt;&lt;strong&gt;&lt;span style="color: #000000"&gt;chown www:www /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;span style="color: #000000"&gt;/&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
                &lt;/strong&gt;&lt;span style="color: #000000"&gt;# &lt;/span&gt;&lt;strong&gt;&lt;span style="color: #000000"&gt;chmod 644 /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;span style="color: #000000"&gt;/*&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
                &lt;/strong&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #000000"&gt;# &lt;strong&gt;chmod 755 /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;span style="color: #000000"&gt;/lg.cgi&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Отредактируем &lt;strong&gt;httpd.conf&lt;/strong&gt;. Я создал отдельный виртуалхост следующего содержания:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;&amp;lt;VirtualHost 195.3.159.250:80&amp;gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServerName lg.muff.kiev.ua&lt;br /&gt;
                &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServerAdmin admin[dot]muff.kiev.ua&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorLog /var/log/apache/lg.muff.kiev.ua-error.log&lt;br /&gt;
                &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TransferLog /var/log/apache/lg.muff.kiev.ua-access.log&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ScriptAlias / /usr/local/www/lg/lg.cgi&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DocumentRoot /usr/local/www/lg/&lt;br /&gt;
                &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Directory &amp;quot;/usr/local/www/lg&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Options -Indexes FollowSymLinks MultiViews&lt;br /&gt;
                &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AllowOverride All&lt;br /&gt;
                &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Directory&amp;gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;lt;/VirtualHost&amp;gt;&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Перезапустим веб-сервер,&amp;nbsp;чтобы изменения вступили в силу:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;apachectl graceful&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Хм... Как бы все готово.&amp;nbsp;Проверяем,&amp;nbsp;что у нас доступно по адресу &lt;a href="http://lg.muff.kiev.ua/"&gt;http://lg.muff.kiev.ua/&lt;/a&gt;. Результат следующий:&lt;br /&gt;
&lt;table border="0" cellspacing="1" cellpadding="1" width="94%" align="center"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class="rtecenter"&gt;&amp;nbsp;&lt;a class="thickbox" title="" href="/files/imagepicker/1/lg-01.png"&gt;&lt;img class="imgp_img" alt="Картинки" src="/files/imagepicker/1/thumbs/lg-01.png" /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    Чтобы немного &amp;quot;приукрасить&amp;quot; ресурс,&amp;nbsp;разместим на странице логотип.&amp;nbsp;Для этого необходимо поместить в каталог файл изображения с названием&amp;nbsp;&lt;strong&gt;logo.gif&lt;/strong&gt;.&amp;nbsp;Еще необходимо внести некоторые изменения&amp;nbsp;в файл&amp;nbsp;&lt;strong&gt;lg.conf&lt;/strong&gt;,&amp;nbsp;но это немного попозже.&lt;br /&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Дальше,&amp;nbsp;следуя инструкции,&amp;nbsp;загружаем файлы&amp;nbsp;созласно указанного списка и размещаем их в каталоге&amp;nbsp;Looking Glass-а:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p class="rtejustify"&gt;# wget &lt;a href="http://www.version6.net/lg/db/as.txt"&gt;http://www.version6.net/lg/db/as.txt&lt;/a&gt;&lt;br /&gt;
                # wget &lt;a href="http://www.version6.net/lg/db/as-apnic.txt"&gt;http://www.version6.net/lg/db/as-apnic.txt&lt;/a&gt;&lt;br /&gt;
                # wget &lt;a href="http://www.version6.net/lg/db/as-arin.txt"&gt;http://www.version6.net/lg/db/as-arin.txt&lt;/a&gt;&lt;br /&gt;
                # wget &lt;a href="http://www.version6.net/lg/db/as-ripe.txt"&gt;http://www.version6.net/lg/db/as-ripe.txt&lt;/a&gt;&lt;br /&gt;
                # wget &lt;a href="http://www.version6.net/lg/db/as-jpnic.txt"&gt;http://www.version6.net/lg/db/as-jpnic.txt&lt;/a&gt;&lt;br /&gt;
                # wget &lt;a href="http://www.version6.net/lg/db/as-lacnic.txt"&gt;http://www.version6.net/lg/db/as-lacnic.txt&lt;/a&gt;&lt;br /&gt;
                # wget &lt;a href="http://www.version6.net/lg/db/communities.txt"&gt;http://www.version6.net/lg/db/communities.txt&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    Необходимо в файле&lt;strong&gt; as.txt &lt;/strong&gt;раскомментировать строки,&amp;nbsp;начинающиеся с &amp;quot;&lt;strong&gt;include&lt;/strong&gt;&amp;quot;.&lt;br /&gt;
    Также, в случае необходимости (например,&amp;nbsp;при&amp;nbsp;использовании локальных номеров автономных систем) &amp;nbsp;необходимо задать номер автономной системы в файле &lt;strong&gt;as.txt&lt;/strong&gt;. В моем частном случае номер автономной системы &lt;strong&gt;12998&lt;/strong&gt; (&lt;a target="_blank" href="http://bg.net.ua/"&gt;ISP BGNet&lt;/a&gt;). Он прописан&amp;nbsp; в файле &lt;strong&gt;as-ripe.txt&lt;/strong&gt;,&amp;nbsp;поэтому просто закомментируем прописанную в файле &lt;strong&gt;as.txt&lt;/strong&gt; строку.&lt;br /&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Следующий шаг - создание базы данных. Для этого воспользуемся&amp;nbsp;скриптом&amp;nbsp;&lt;strong&gt;makedb.pl&lt;/strong&gt;. Скопируем его&amp;nbsp;в&amp;nbsp;директорию&amp;nbsp;&lt;strong&gt;LG&lt;/strong&gt; и&amp;nbsp;дадим команду на запуск:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;cp makedb.pl /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
                # &lt;strong&gt;./makedb.pl&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;                Reading AS names..&lt;br /&gt;
                &amp;nbsp;Read AS list from as.txt..&lt;br /&gt;
                &amp;nbsp;OK&lt;br /&gt;
                Reading community names..&lt;br /&gt;
                &amp;nbsp;Read community list from communities.txt..&lt;br /&gt;
                &amp;nbsp;OK&lt;br /&gt;
                Setting up database..&lt;br /&gt;
                &amp;nbsp;OK&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    Результатом команды будет файл &lt;strong&gt;as.db&lt;/strong&gt;.&lt;br /&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;Чтобы быть уверенным,&amp;nbsp;что&amp;nbsp;все&amp;nbsp;необходимые файлы&amp;nbsp;доступны на чтение веб-сервером, добавим необходимые права:&lt;br /&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="94%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;chmod a+r&amp;nbsp; /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;span style="color: #000000"&gt;/*.txt&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
                # &lt;strong&gt;chmod a+r&amp;nbsp; /usr/local/www/&lt;span style="color: #ff0000"&gt;lg.muff.kiev.ua&lt;/span&gt;&lt;span style="color: #000000"&gt;/as.db&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
    &amp;nbsp;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p class="rtejustify"&gt;Кажется все инструкции выполнены...&amp;nbsp; Дальше необходимо создать файл логов и выставить необходимые права:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;touch /var/log/lg.log&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Теперь советую отредактировать конфигурационный файл&amp;nbsp;&lt;strong&gt;lg.conf&lt;/strong&gt;, задать необходимые переменные и описать роутеры,&amp;nbsp;к которым будем подключаться. Для теста вписал три роутера:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;ROUTER1&lt;/strong&gt;: UA-IX. Clients. FreeBSD Router.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROUTER2&lt;/strong&gt;: UA-IX. Clients. Cisco Router.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ROUTER3&lt;/strong&gt;: Full-View. Clients. FreeBSD Router.&lt;/li&gt;
&lt;/ol&gt;
&lt;p class="rtejustify"&gt;Листинг &lt;strong&gt;lg.conf&lt;/strong&gt; получился следующего содержания:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td bgcolor="#333333"&gt;
&lt;pre&gt;&lt;strong&gt;&lt;span style="color: #00ccff"&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;ISO-8859-1&amp;quot; ?&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="color: #00ccff"&gt; &lt;/span&gt;&lt;/strong&gt;&lt;/pre&gt;&lt;pre&gt;&lt;strong&gt;&lt;span style="color: #00ccff"&gt;&amp;lt;LG_Conf_File&amp;gt;&lt;/span&gt;&lt;/strong&gt;

&lt;strong&gt;&lt;span style="color: #00ccff"&gt;         &amp;lt;LGURL&amp;gt;&lt;span style="color: #ff0000"&gt;/&lt;/span&gt;&amp;lt;/LGURL&amp;gt;
        &amp;lt;LogFile&amp;gt;&lt;span style="color: #ff0000"&gt;/var/log/lg.log&lt;/span&gt;&lt;span style="color: #00ccff"&gt;&amp;lt;/LogFile&amp;gt;
&lt;/span&gt;        &amp;lt;ASList&amp;gt;&lt;span style="color: #ff0000"&gt;./as.db&lt;/span&gt;&amp;lt;/ASList&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LogoImage Align=&amp;quot;center&amp;quot; Link=&amp;quot;&lt;/span&gt;&lt;/strong&gt;&lt;a href="http://lg.muff.kiev.ua/%22%3Elogo.gif%3C/LogoImage"&gt;&lt;strong&gt;&lt;span style="color: #00ccff"&gt;http://lg.muff.kiev.ua/&amp;quot;&amp;gt;&lt;span style="color: #ff0000"&gt;logo.gif&lt;/span&gt;&amp;lt;/LogoImage&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;span style="color: #00ccff"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;HTMLTitle&amp;gt;&lt;span style="color: #ff0000"&gt;Looking Glass&lt;/span&gt;&amp;lt;/HTMLTitle&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Favicon&amp;gt;&lt;span style="color: #ff0000"&gt;/favicon.ico&lt;/span&gt;&amp;lt;/Favicon&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ContactMail&amp;gt;&lt;span style="color: #ff0000"&gt;admin[dot]muff.kiev.ua&lt;/span&gt;&amp;lt;/ContactMail&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;RSHCmd&amp;gt;&lt;span style="color: #ff0000"&gt;/usr/bin/rsh -l lg&lt;/span&gt;&amp;lt;/RSHCmd&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;HTTPMethod&amp;gt;&lt;span style="color: #ff0000"&gt;POST&lt;/span&gt;&amp;lt;/HTTPMethod&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;TimeOut&amp;gt;&lt;span style="color: #ff0000"&gt;10&lt;/span&gt;&amp;lt;/TimeOut&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Disclaimer&amp;gt;&lt;span style="color: #ff0000"&gt;All commands will be logged for possible later analysis and statistics.&lt;/span&gt;&amp;lt;/Disclaimer&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;SecureMode&amp;gt;&lt;span style="color: #ff0000"&gt;On&lt;/span&gt;&amp;lt;/SecureMode&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/pre&gt;&lt;pre&gt;&lt;strong&gt;&lt;span style="color: #00ccff"&gt;         &amp;lt;Router_List&amp;gt;
                &amp;lt;Separator&amp;gt;&lt;span style="color: #ff0000"&gt;UA-IX&lt;/span&gt;&amp;lt;/Separator&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Router Name=&amp;quot;&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;&amp;quot; OSType=&amp;quot;&lt;span style="color: #ff0000"&gt;Zebra&lt;/span&gt;&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;URL&amp;gt;&lt;span style="color: #ff0000"&gt;telnet://passROUTER1@192.168.206.1&lt;/span&gt;&amp;lt;/URL&amp;gt;
                &amp;lt;/Router&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Router Name=&amp;quot;&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;URL&amp;gt;&lt;span style="color: #ff0000"&gt;telnet://lguser:passROUTER2@192.168.206.5&lt;/span&gt;&amp;lt;/URL&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Router&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Separator&amp;gt;&lt;span style="color: #ff0000"&gt;Full-View&lt;/span&gt;&amp;lt;/Separator&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Router Name=&amp;quot;&lt;span style="color: #ff0000"&gt;ROUTER3&lt;/span&gt;&amp;quot; OSType=&amp;quot;&lt;span style="color: #ff0000"&gt;Zebra&lt;/span&gt;&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;URL&amp;gt;&lt;span style="color: #ff0000"&gt;telnet://passROUTER3@192.168.206.30&lt;/span&gt;&amp;lt;/URL&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;font color="#00ccff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Router&amp;gt;&lt;/font&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;span style="color: #00ccff"&gt;         &amp;lt;/Router_List&amp;gt;&lt;/span&gt;&lt;/strong&gt;
&lt;strong&gt;&lt;span style="color: #00ccff"&gt;
&amp;lt;/LG_Conf_File&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Казалось бы,&amp;nbsp;что на этом все... Однако&amp;nbsp;нашел еще несколько костылей.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;strong&gt;Telnet-&lt;/strong&gt;соединение&amp;nbsp;к маршрутизаторам не выполнялось.&amp;nbsp;В логах веб-сервера обнаружил такую запись:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&amp;nbsp;Can't locate Net/Telnet.pm in @INC (@INC contains: /usr/local/lib/perl5/5.8.9/BSDPAN /usr/local/lib/perl5/site_perl/5.8.9/mach /usr/local/lib/perl5/site_perl/5.8.9 /usr/local/lib/perl5/5.8.9/mach /usr/local/lib/perl5/5.8.9 .) at (eval 9) line 2., referer: &lt;a href="http://lg.muff.kiev.ua/"&gt;http://lg.muff.kiev.ua/&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Теперь понятно... Упустил,&amp;nbsp;что на этом сервере не установлено perl-расширение &lt;strong&gt;Net::Telnet&lt;/strong&gt;. Выполним установку этого модуля из портов:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cd /usr/ports/net/p5-Net-Telnet &amp;amp;&amp;amp; make install clean &amp;amp;&amp;amp;&amp;nbsp;rehash&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;После этого заработало соединение к &lt;strong&gt;Cisco&lt;/strong&gt;-роутеру, а с серверами под управлением &lt;strong&gt;FreeBSD&lt;/strong&gt; c установленной &lt;strong&gt;Quagga&lt;/strong&gt; все еще были проблемы. В логах обнаружил такие записи:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2012/03/22 20:17:30 BGP: buffer_flush_window called with non-positive window height 0, forcing to 1&lt;br /&gt;
            2012/03/22 20:21:59 BGP: buffer_flush_window called with non-positive window height 0, forcing to 1&lt;br /&gt;
            2012/03/22 20:59:18 BGP: buffer_flush_window called with non-positive window height 0, forcing to 1&lt;br /&gt;
            2012/03/22 21:02:16 BGP: buffer_flush_window called with non-positive window height 0, forcing to 1&lt;br /&gt;
            2012/03/22 21:03:17 BGP: buffer_flush_window called with non-positive window height 0, forcing to 1&lt;br /&gt;
            2012/03/22 21:06:16 BGP: buffer_flush_window called with non-positive window height 0, forcing to 1&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Решение было следующим. В скрипте &lt;strong&gt;lg.cgi&lt;/strong&gt; необходимо заккоментировать (или удалить) следующий блок:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
$telnet-&amp;gt;put(pack(&amp;quot;C9&amp;quot;,
                  255,                  # TELNET_IAC
                  250,                  # TELNET_SB
                  31, 0, 200, 0, 0,     # TELOPT_NAWS
                  255,                  # TELNET_IAC
                  240));                # TELNET_SE&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;После удаления этого блока все заработало. Итак,&amp;nbsp;финиш...&amp;nbsp; Ну и напоследок,&amp;nbsp;скриншоты, как все это выглядит:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Вот так выглядит интерфейс:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-02.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="91" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-02.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Вывод комманды &lt;em&gt;&lt;strong&gt;show ip bgp 31.43.184.0/24&lt;/strong&gt;&lt;/em&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-10.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="101" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-10.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Вывод комманды &lt;em&gt;&lt;strong&gt;show ip bgp neighbors 193.227.206.46 advertised-routes&lt;/strong&gt;&lt;/em&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-11.png"&gt;&lt;img class="imgp_img" alt="Looking Glass " width="200" height="102" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-11.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Вывод комманды &lt;em&gt;&lt;strong&gt;show ip bgp summary&lt;/strong&gt;&lt;/em&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-04.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="117" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-04.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Обзор нейбора (&lt;em&gt;&lt;strong&gt;show ip bgp neighbors 193.227.207.14&lt;/strong&gt;&lt;/em&gt;):&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-07.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="169" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-07.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Обзор приходящих от нейбора роутов (&lt;em&gt;&lt;strong&gt;show ip bgp neighbors 193.227.206.29 routes&lt;/strong&gt;&lt;/em&gt;):&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-08.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="99" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-08.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Вывод комманды &lt;em&gt;&lt;strong&gt;ping 8.8.8.8&lt;/strong&gt;&lt;/em&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-09.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="72" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-09.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Вывод комманды &lt;em&gt;&lt;strong&gt;traceroute 8.8.8.8&lt;/strong&gt;&lt;/em&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/lg-12.png"&gt;&lt;img class="imgp_img" alt="Looking Glass" width="200" height="94" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/lg-12.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtecenter"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/bgp-looking-glass-dlya-bgp-routera#comments</comments>
 <pubDate>Thu, 22 Mar 2012 23:35:33 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">351 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>BGP - анонсирование несколько сетей от разных AS</title>
 <link>http://muff.kiev.ua/content/bgp-anonsirovanie-neskolko-setei-ot-raznykh</link>
 <description>&lt;p class="rtejustify"&gt;Имеем в наличии роутер под управлением &lt;strong&gt;FreeBSD&lt;/strong&gt; и с установленным демоном маршрутизации &lt;strong&gt;Quagga&lt;/strong&gt;. Отдельно рассматривать установку &lt;strong&gt;Quagga&lt;/strong&gt; не будем,&amp;nbsp;есть уже&amp;nbsp;&lt;a href="http://muff.kiev.ua/content/quagga-prevrashchenie-servera-v-polnofunktsionalnyi-marshrutizator"&gt;написанная статья&lt;/a&gt;. Поставленая задача - настроить анонсирование сетей от двух разных автономных систем (&lt;strong&gt;AS&lt;/strong&gt;).&lt;/p&gt;
&lt;p class="rtejustify"&gt;Для решения этой задачи,&amp;nbsp;соберем тестовый стенд из двух маршрутизаторов (&lt;strong&gt;ROUTER1&lt;/strong&gt; и &lt;strong&gt;ROUTER2&lt;/strong&gt; соответственно),&amp;nbsp;обьединенных сетями &lt;strong&gt;172.30.11.0/30&lt;/strong&gt; и &lt;strong&gt;172.30.12.0/30&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rteleft"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="rteleft"&gt;&lt;em&gt;&lt;strong&gt;ROUTER1&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
15:50[]root@&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;#~&amp;gt;&lt;strong&gt;uname -nmr&lt;br /&gt;&lt;/strong&gt;ROUTER1 9.0-RELEASE amd64

15:50[]root@&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;#~&amp;gt;&lt;strong&gt;ifconfig vlan11
&lt;/strong&gt;vlan11: flags=8843&amp;lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&amp;gt; metric 0 mtu 1500
        options=3&amp;lt;RXCSUM,TXCSUM&amp;gt;
        ether 00:19:e0:74:45:0a
        inet &lt;span style="color: #ff0000"&gt;172.30.11.1&lt;/span&gt; netmask 0xfffffffc broadcast 172.30.11.3
        inet6 fe80::219:e0ff:fe74:450a%vlan11 prefixlen 64 scopeid 0x9
        nd6 options=21&amp;lt;PERFORMNUD,AUTO_LINKLOCAL&amp;gt;
        media: Ethernet autoselect (1000baseT &amp;lt;full-duplex&amp;gt;)
        status: active
        vlan: 11 parent interface: re0

15:50[]root@&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;#~&amp;gt;&lt;strong&gt;ifconfig vlan12&lt;br /&gt;&lt;/strong&gt;vlan12: flags=8843&amp;lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&amp;gt; metric 0 mtu 1500&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; options=3&amp;lt;RXCSUM,TXCSUM&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ether 00:19:e0:74:45:0a&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inet &lt;span style="color: #ff0000"&gt;172.30.12.1&lt;/span&gt; netmask 0xfffffffc broadcast 172.30.12.3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inet6 fe80::219:e0ff:fe74:450a%vlan12 prefixlen 64 scopeid 0xa&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nd6 options=21&amp;lt;PERFORMNUD,AUTO_LINKLOCAL&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; media: Ethernet autoselect (1000baseT &amp;lt;full-duplex&amp;gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status: active&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vlan: 12 parent interface: re0&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rteright"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="rteleft"&gt;&lt;em&gt;&lt;strong&gt;ROUTER2&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
15:50[]root@&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;#~&amp;gt;&lt;strong&gt;uname -nmr
&lt;/strong&gt;ROUTER2 8.0-STABLE i386

15:50[]root@&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;#~&amp;gt;&lt;strong&gt;ifconfig vlan11
&lt;/strong&gt;vlan11: flags=8843&amp;lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&amp;gt; metric 0 mtu 1500
        ether 00:50:8b:db:4e:44
        inet &lt;span style="color: #ff0000"&gt;172.30.11.2&lt;/span&gt; netmask 0xfffffffc broadcast 172.30.11.3
        media: Ethernet autoselect (100baseTX &amp;lt;full-duplex&amp;gt;)
        status: active
        vlan: 11 parent interface: fxp0

15:50[]root@&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;#~&amp;gt;&lt;strong&gt;ifconfig vlan12&lt;br /&gt;&lt;/strong&gt;vlan12: flags=8843&amp;lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&amp;gt; metric 0 mtu 1500&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ether 00:50:8b:db:4e:44&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inet &lt;span style="color: #ff0000"&gt;172.30.12.2&lt;/span&gt; netmask 0xfffffffc broadcast 172.30.12.3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; media: Ethernet autoselect (100baseTX &amp;lt;full-duplex&amp;gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status: active&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vlan: 12 parent interface: fxp0&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Для построения BGP-взаемодействия,&amp;nbsp;будем использовать &lt;a href="http://muff.kiev.ua/content/bgp-lokalnye-nomera"&gt;номера автономных систем,&amp;nbsp;зарезервированных для локального использования&lt;/a&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Итак,&amp;nbsp;с &lt;strong&gt;ROUTER1&lt;/strong&gt; будем анонсировать две сети &lt;strong&gt;192.168.11.0/24&lt;/strong&gt; и &lt;strong&gt;192.168.12.0/24&lt;/strong&gt; от &lt;strong&gt;AS 65011&lt;/strong&gt; и &lt;strong&gt;65012&lt;/strong&gt; соответственно. А на &lt;strong&gt;ROUTER2&lt;/strong&gt; будем принимать эти анонсы,&amp;nbsp;используя &lt;strong&gt;AS 65535&lt;/strong&gt;. На &lt;strong&gt;ROUTER1&lt;/strong&gt; &lt;span style="color: #ff0000"&gt;обязательно&lt;/span&gt; необходимо указать опцию &lt;strong&gt;bgp multiple-instance&lt;/strong&gt;, которая и позволяет работать с несколькими &lt;strong&gt;AS&lt;/strong&gt; одновременно.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Сам процесс конфигурирования BGP описывать не буду, а уже выложу готовые конфигурации как для &lt;strong&gt;ROUTER1&lt;/strong&gt;, так и для &lt;strong&gt;ROUTER2&lt;/strong&gt;.&amp;nbsp;Набросал только базовые комманды. Префикс-лист &lt;strong&gt;DENY-ANY&lt;/strong&gt; используется для того,&amp;nbsp;чтобы не получать на &lt;strong&gt;ROUTER1 &lt;/strong&gt;свои же анонсы от &lt;strong&gt;ROUTER2&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;em&gt;&lt;strong&gt;ROUTER1&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;# &lt;strong&gt;show running-config&lt;/strong&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;pre&gt;
Current configuration:
!
password 8 bJdy6GGF2QMTg
enable password 8 4D7IL52lMQH4Q
service password-encryption
!
bgp multiple-instance
!
router bgp 65011 view AS65011
 bgp router-id 172.30.11.1
 network 192.168.11.0/24
 neighbor 172.30.11.2 remote-as 65535
 neighbor 172.30.11.2 description *** AS65011 ***
 neighbor 172.30.11.2 soft-reconfiguration inbound
&amp;nbsp;neighbor 172.30.11.2 prefix-list DENY-ANY in
!
router bgp 65012 view AS65012
 bgp router-id 172.30.12.1
 network 192.168.12.0/24
 neighbor 172.30.12.2 remote-as 65535
 neighbor 172.30.12.2 description *** AS65012 ***
 neighbor 172.30.12.2 soft-reconfiguration inbound
&amp;nbsp;neighbor 172.30.12.2 prefix-list DENY-ANY in
!
line vty
!
end&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;strong&gt;&lt;em&gt;ROUTER2&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;# &lt;strong&gt;show running-config&lt;/strong&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;pre&gt;
Current configuration:
!
password 8 bJdy6GGF2QMTg
enable password 8 4D7IL52lMQH4Q
service password-encryption
!
router bgp 65535
 bgp router-id 192.168.192.55
 neighbor 172.30.11.1 remote-as 65011
 neighbor 172.30.11.1 description *** AS65011 ***
 neighbor 172.30.11.1 soft-reconfiguration inbound
 neighbor 172.30.12.1 remote-as 65012
 neighbor 172.30.12.1 description *** AS65012 ***
 neighbor 172.30.12.1 soft-reconfiguration inbound
!
line vty
!
end&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Проверим на &lt;strong&gt;ROUTER2&lt;/strong&gt;, что имеем в результате:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;# &lt;strong&gt;show ip bgp summary
&lt;/strong&gt;BGP router identifier 192.168.192.55, local AS number 65535
RIB entries 3, using 192 bytes of memory
Peers 2, using 5048 bytes of memory&lt;/pre&gt;&lt;pre&gt;
Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
172.30.11.1     4 65011      11      12        0    0    0 00:07:57        1
172.30.12.1     4 65012      11      12        0    0    0 00:07:09        1&lt;/pre&gt;&lt;pre&gt;
Total number of neighbors 2

&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;# &lt;strong&gt;show ip bgp neighbors 172.30.11.1 received-routes&lt;br /&gt;&lt;/strong&gt;BGP table version is 0, local router ID is 192.168.192.55&lt;br /&gt;Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r RIB-failure, S Stale, R Removed&lt;br /&gt;Origin codes: i - IGP, e - EGP, ? - incomplete&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp; Network&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next Hop&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Metric LocPrf Weight Path&lt;br /&gt;*&amp;gt; 192.168.11.0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 172.30.11.1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 65011 i&lt;br /&gt;

&lt;span style="color: #ff0000"&gt;ROUTER2&lt;/span&gt;# &lt;strong&gt;show ip bgp neighbors 172.30.12.1 received-routes&lt;br /&gt;&lt;/strong&gt;BGP table version is 0, local router ID is 192.168.192.55&lt;br /&gt;Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r RIB-failure, S Stale, R Removed&lt;br /&gt;Origin codes: i - IGP, e - EGP, ? - incomplete&lt;/pre&gt;&lt;pre&gt;
&amp;nbsp;&amp;nbsp; Network&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next Hop&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Metric LocPrf Weight Path&lt;br /&gt;*&amp;gt; 192.168.12.0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 172.30.12.1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 65012 i&lt;/pre&gt;&lt;pre&gt;
Total number of prefixes 1&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Все работает. Имеем соединение с двумя нейборами &lt;strong&gt;172.30.11.1&lt;/strong&gt; и &lt;strong&gt;172.30.12.1&lt;/strong&gt;, получая от каждого&amp;nbsp;в анонсах по одной сети.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Последний штрих - посмотрим,&amp;nbsp;что имеем на &lt;strong&gt;ROUTER1&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;# &lt;strong&gt;show ip bgp summary
&lt;/strong&gt;BGP router identifier 172.30.11.1, local AS number 65011
RIB entries 3, using 288 bytes of memory
Peers 1, using 4560 bytes of memory

&lt;/pre&gt;&lt;pre&gt;
Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
172.30.11.2     4 65535      31      37        0    0    0 00:01:54        0

&lt;/pre&gt;&lt;pre&gt;
Total number of neighbors 1&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;А вот здесь имеем в наличии только одного нейбора. Для просмотра отдельных сессий необходимо явно указывать,&amp;nbsp;какой &lt;strong&gt;view &lt;/strong&gt;использовать:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;# &lt;strong&gt;show ip bgp view AS65011 summary&lt;br /&gt;&lt;/strong&gt;BGP router identifier 172.30.11.1, local AS number 65011&lt;br /&gt;RIB entries 3, using 288 bytes of memory&lt;br /&gt;Peers 1, using 4560 bytes of memory&lt;/pre&gt;&lt;pre&gt;
Neighbor&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V&amp;nbsp;&amp;nbsp;&amp;nbsp; AS MsgRcvd MsgSent&amp;nbsp;&amp;nbsp; TblVer&amp;nbsp; InQ OutQ Up/Down&amp;nbsp; State/PfxRcd&lt;br /&gt;172.30.11.2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 65535&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 00:02:33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/pre&gt;&lt;pre&gt;
Total number of neighbors 1


&lt;span style="color: #ff0000"&gt;ROUTER1&lt;/span&gt;# &lt;strong&gt;show ip bgp view AS65012 summary&lt;br /&gt;&lt;/strong&gt;BGP router identifier 172.30.12.1, local AS number 65012&lt;br /&gt;RIB entries 3, using 288 bytes of memory&lt;br /&gt;Peers 1, using 4560 bytes of memory&lt;/pre&gt;&lt;pre&gt;
Neighbor&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V&amp;nbsp;&amp;nbsp;&amp;nbsp; AS MsgRcvd MsgSent&amp;nbsp;&amp;nbsp; TblVer&amp;nbsp; InQ OutQ Up/Down&amp;nbsp; State/PfxRcd&lt;br /&gt;172.30.12.2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 65535&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 00:02:56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/pre&gt;&lt;pre&gt;
Total number of neighbors 1&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Все работает,&amp;nbsp;что и требовалось в результате :)&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/bgp-anonsirovanie-neskolko-setei-ot-raznykh#comments</comments>
 <pubDate>Thu, 08 Mar 2012 14:37:45 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">454 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Exim - ограничение на количество писем в единицу времени</title>
 <link>http://muff.kiev.ua/content/exim-ogranichenie-na-kolichestvo-pisem-v-edinitsu-vremeni</link>
 <description>&lt;p class="rtecenter"&gt;&lt;img alt="Exim logo" width="140" height="105" src="http://muff.kiev.ua/files/exim.png" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Понадобилось&amp;nbsp;для&amp;nbsp;определенных хостов установить ограничение на количество отправляемых писем за единицу времени. Реализовать это не так уж и сложно.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Добавим такие &lt;strong&gt;acl&lt;/strong&gt; в конфигурационный файл &lt;strong&gt;Exim&lt;/strong&gt;-а &lt;strong&gt;/usr/local/etc/exim/configure&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
begin acl&lt;/pre&gt;&lt;pre&gt;
acl_not_smtp:
	deny message = Sender rate overlimit - $sender_rate / $sender_rate_period
	hosts = 192.168.168.100
	ratelimit = 30 / 1h / leaky
accept

acl_check_rcpt:
	deny message = Sender rate SMTP overlimit - $sender_rate / $sender_rate_period
	hosts = 192.168.168.100
	ratelimit = 100 / 1h / leaky&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Этими &lt;strong&gt;acl&lt;/strong&gt; выставляем ограничение в 30 писем/час для почты,&amp;nbsp;отправленной не по &lt;strong&gt;SMTP&lt;/strong&gt; (например через &lt;strong&gt;PHP mail&lt;/strong&gt;), а также в 100 писем/час для отправки через &lt;strong&gt;SMTP&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Также необходимо прописать &lt;strong&gt;acl&amp;nbsp;acl_not_smtp&lt;/strong&gt;&amp;nbsp;в список acl-ей:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
acl_not_smtp = acl_not_smtp&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;После этого даем команду на перезапуск &lt;strong&gt;Exim&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;sh /usr/local/etc/rc.d/exim restart&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Отталкиваясь от указанного примера можно делать и более &amp;quot;расширенные&amp;quot; конфигурации.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/exim-ogranichenie-na-kolichestvo-pisem-v-edinitsu-vremeni#comments</comments>
 <pubDate>Mon, 05 Mar 2012 15:25:56 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">453 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Hosts - немного информации о файле hosts</title>
 <link>http://muff.kiev.ua/content/hosts-nemnogo-informatsii-o-faile-hosts</link>
 <description>&lt;p class="rtejustify"&gt;Устал отвечать на вопросы:&amp;nbsp;&amp;quot;что такое файл &lt;strong&gt;hosts&lt;/strong&gt;?&amp;quot;, и &amp;quot;с чем его едят?&amp;quot;...&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;strong&gt;hosts&lt;/strong&gt;&amp;nbsp;- текстовый файл, содержащий базу данных доменных имен и используемый при их трансляции в сетевые адреса узлов. Запрос к этому файлу имеет приоритет перед обращением к &lt;strong&gt;DNS-серверам&lt;/strong&gt;. В отличие от &lt;strong&gt;DNS&lt;/strong&gt;, содержимое файла контролируется администратором компьютера.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;em&gt;&lt;strong&gt;Как это было...&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;В&amp;nbsp;далекие времена, когда &lt;strong&gt;Интырнеты&lt;/strong&gt; были маленькие, а компутеры большие, аки шкафы, было создано несколько сетей. Среди них &lt;strong&gt;Arpa&lt;/strong&gt;, &lt;strong&gt;Chaos&lt;/strong&gt; ну и&amp;nbsp; другие. Естественно встал вопрос о нумерации компьютеров в сети, который был решен средствами сетевых протоколов. Изначально, когда сеть была малого размера, доступ к компьютерам сети мог осуществляться по сетевому адресу (например по ip). Далее, с ростом сети, это стало неудобно, и потребовалась замена стандартной схемы. Поэтому сетевыми администраторами была придумана система &lt;strong&gt;hosts&lt;/strong&gt;. Был создан файл, в котором в явном виде указывалось соответствие сетевого адреса адресу мнемоническому. Это нововведение значительно упростило жизнь пользователей, ведь теперь не надо было запоминать эти многочисленные цифры, а достаточно иметь такой файлик у себя. Однако подобный файл с ростом сети стал просто огромным и и плохо оптимизированным, т.е. для того, чтобы все пользователи сети узнали о новом сервере с адресом, например, &lt;strong&gt;193.232.159.144&lt;/strong&gt; под именем &lt;strong&gt;music.ru&lt;/strong&gt;, необходимо было разослать всем участникам сети этот файл и вручную добавить описание нового хоста к файлу. С ростом сети сделать это было все сложнее и сложнее, а когда запросы на добавление стали приходить несколько раз в час, то и просто невозможно. От традиционной системы пришлось отказаться, и была разработана система доменных имен - &lt;strong&gt;&lt;a href="http://ru.wikipedia.org/wiki/DNS"&gt;DNS&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Однако,&amp;nbsp;стоит отметить, что файл &lt;strong&gt;hosts&lt;/strong&gt; никуда не пропал. Даже на сегодняшний день он присутствует в большинстве операционных систем. В Unіх-системах путь к нему &lt;strong&gt;/etc/hosts&lt;/strong&gt;. В продуктах &lt;strong&gt;Microsoft&lt;/strong&gt; он доступен по адресу: &lt;strong&gt;C:\WINDOWS\system32\drivers\etc\hosts&lt;/strong&gt;.В данном файле в прямое соответствие выставляются ip-адрес и доменное имя.&amp;nbsp; Пример файла hosts:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/hosts00.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="106" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/hosts00.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Итак,&amp;nbsp;сначала идут комментарии (начинаются со знака &amp;quot;#&amp;quot;). Ну а дальше - уже идут записи,&amp;nbsp;описывающие соответствия &lt;strong&gt;IP-адрес&amp;lt;-&amp;gt; имя&lt;/strong&gt;. У меня только одна запись - &lt;strong&gt;127.0.0.1 - localhost&lt;/strong&gt;. Эта запись указывает на то, что адрес обратной петли отвечает имя &lt;strong&gt;localhost&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Однако,&amp;nbsp;ничего не запрещает добавить в &lt;strong&gt;hosts&lt;/strong&gt;, например,&amp;nbsp;такую &lt;strong&gt;з&lt;/strong&gt;апись:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
93.158.134.11		yandex.ru&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;В этом случае,&amp;nbsp;все запросы на &lt;strong&gt;yandex.ru&lt;/strong&gt; будут постоянно перенаправляться на IP-адрес &lt;strong&gt;93.158.134.11&lt;/strong&gt;. Записи в файле&amp;nbsp;&lt;strong&gt;hosts &lt;/strong&gt;имеют первоочередной приоритет при преобразовании имени в IP.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Попробуем разобраться,&amp;nbsp;почему это происходит.&amp;nbsp;Ни для кого не секрет, что при попытке расшифровки имени, &lt;strong&gt;DNS-client &lt;/strong&gt;компьютера обращается изначально к кешу &lt;strong&gt;DNS&lt;/strong&gt;, в котором информация о предыдущих преобразованиях хранится некоторое время. Это время задается либо в записи SOA для всего доменного имени, либо отдельно для каждой зоны (для &lt;strong&gt;MX-записи&lt;/strong&gt; может быть одно, для &lt;strong&gt;А-записи&lt;/strong&gt; - &amp;nbsp;другое...). Запись в файле &lt;strong&gt;hosts &lt;/strong&gt;это время делает бесонечно большим, т.е. эта запись хранится постоянно и не изменяется.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;em&gt;&lt;strong&gt;Отображение&amp;nbsp;и очистка&amp;nbsp;кеша DNS&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Попробуем более подробно разобраться,&amp;nbsp;что такое кеш &lt;strong&gt;DNS&lt;/strong&gt;. Это информация,&amp;nbsp;о соответствии &lt;strong&gt;IP-адрес&amp;lt;-&amp;gt; имя&lt;/strong&gt;, которая хранится в памяти устройства. Для чего это нужно? Рассмотрим на простом примере... Воспользуемся утилитой &lt;strong&gt;ping&lt;/strong&gt;, которая посылает &lt;strong&gt;ICMP-пакеты&lt;/strong&gt; &amp;quot;поверх&amp;quot; &lt;strong&gt;IP-протокола&lt;/strong&gt;, и получает их обратно (при этом используются различные метки).&lt;/p&gt;
&lt;p class="rtejustify"&gt;Однако,&amp;nbsp;когда даем команду &amp;quot;&lt;strong&gt;ping yandex.ru&lt;/strong&gt;&amp;quot;, компьютер должен сначала выполнить преобразование &lt;strong&gt;DNS-имени&lt;/strong&gt; &lt;strong&gt;yandex.ru&lt;/strong&gt; в &lt;strong&gt;IP-адрес 93.158.134.11&lt;/strong&gt;. Кеш &lt;strong&gt;DNS&lt;/strong&gt; нужен для того, чтобы каждый раз не делать запросов на разрешение доменного имени в &lt;strong&gt;IP-адрес&lt;/strong&gt; заново.&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/hosts01.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="100" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/hosts01.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Если выполнить команду &lt;strong&gt;ping&lt;/strong&gt;,&amp;nbsp;как в примере, то если бы не было кеша DNS, процедуру преобразование &lt;strong&gt;DNS-имени&lt;/strong&gt; &lt;strong&gt;yandex.ru&lt;/strong&gt; в &lt;strong&gt;IP-адрес&lt;/strong&gt; необходимо было бы выполнить 10 раз. Также стоит иметь ввиду,&amp;nbsp;что &lt;strong&gt;DNS-сервера&lt;/strong&gt; провайдера тоже кешируют информацию на период времени,&amp;nbsp;указанный в &lt;strong&gt;SOA-записи&lt;/strong&gt; домена.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Для просмотра локального &lt;strong&gt;DNS-кеша&lt;/strong&gt; на компьютере под управлением &lt;strong&gt;OS Windows&lt;/strong&gt; воспользуемся коммандой &lt;strong&gt;ipconfig&lt;/strong&gt; с ключем &lt;strong&gt;displaydns&lt;/strong&gt;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&amp;nbsp;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/hosts02.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="141" height="200" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/hosts02.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Этот список&amp;nbsp; и есть локальный DNS-кеш,&amp;nbsp;где параметр &amp;quot;&lt;strong&gt;Срок жизни&lt;/strong&gt;&amp;quot; - это время в секундах,&amp;nbsp;которое запись&amp;nbsp;еще будет храниться.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Чтобы сбросить кеш, необходимо использовать ключ &lt;strong&gt;flushdns&lt;/strong&gt;. После выполнения &amp;quot;ipconfig -flushdns&amp;quot; будет сброшен весь кеш DNS, исключая записи, указанные в&amp;nbsp; файле &lt;strong&gt;hosts&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/hosts03.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="125" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/hosts03.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;em&gt;&lt;strong&gt;Что это нам дает?&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Озникомившись с информацией, необходимо взять ее &amp;quot;на вооружение&amp;quot;. В основном возможность использования файла &lt;strong&gt;hosts &lt;/strong&gt;пригодится веб-мастерам и системным администраторам. Довольно удобно использовать файл &lt;strong&gt;hosts&lt;/strong&gt; при переносе хостинга или других операциях, где необходимо эмулировать запросы к &lt;strong&gt;DNS-имени&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Также стоит иметь ввиду,&amp;nbsp;что&amp;nbsp;в&amp;nbsp;файл &lt;strong&gt;hosts&lt;/strong&gt; довольно часто добавляют информацию вредоносные программы,&amp;nbsp;блокируя доступ к сайтам обновлений антивирусных программ. Так что, если антивирус не обновляется&amp;nbsp;- проверьте первым делом файл &lt;strong&gt;hosts&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/hosts-nemnogo-informatsii-o-faile-hosts#comments</comments>
 <pubDate>Sun, 04 Mar 2012 09:59:27 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">452 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Htop - расширенный монитор процессов</title>
 <link>http://muff.kiev.ua/content/htop</link>
 <description>&lt;p class="rtejustify"&gt;&lt;strong&gt;Htop&lt;/strong&gt; - расширенный монитор процессов, написанный для&amp;nbsp; &lt;strong&gt;GNU/Linux&lt;/strong&gt;. Задуман он был для замены стандартной утилиты &lt;strong&gt;top&lt;/strong&gt;. &lt;strong&gt;Htop&lt;/strong&gt;, в отличии от top, показывает все процессы в системе. Также показывает время непрерывной работы, использование процессоров и памяти. Тоесть он более информативный,&amp;nbsp;нежели стандартный &lt;strong&gt;top&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Утилита есть в портах. Выполним установку:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cd /usr/ports/sysutils/htop &amp;amp;&amp;amp; make install clean &amp;amp;&amp;amp; rehash&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Однако во время установки наблюдаем такую ошибку:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre&gt;
***********************************************************
htop(1) requires linprocfs(5) to be mounted. If you don't
have it mounted already, please add this line to /etc/fstab
and run `mount linproc`:
linproc /compat/linux/proc linprocfs rw 0 0
***********************************************************
*** Error code 1&lt;/pre&gt;&lt;pre&gt;
Stop in /usr/ports/sysutils/htop.
*** Error code 1&lt;/pre&gt;&lt;pre&gt;
Stop in /usr/ports/sysutils/htop.&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Необходимо включить режим совместимости с &lt;strong&gt;Linux&lt;/strong&gt;. &lt;a href="http://muff.kiev.ua/content/linux-emulyator-na-freebsd"&gt;Статья&lt;/a&gt; о этом уже есть, однако можно и повториться.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Добавим в &lt;strong&gt;rc.conf&lt;/strong&gt; поддержку &lt;strong&gt;Linux&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;echo &amp;quot;linux_enable=YES&amp;quot; &amp;gt;&amp;gt; /etc/rc.conf&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Также добавим записи в &lt;strong&gt;loader.conf&lt;/strong&gt;:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;echo &amp;quot;linux_load=&amp;quot;yes&amp;quot;&amp;quot;&amp;gt;&amp;gt; /boot/loader.conf&lt;br /&gt;
            &lt;/strong&gt;# &lt;strong&gt;echo &amp;quot;linprocfs_load=&amp;quot;yes&amp;quot;&amp;quot; &amp;gt;&amp;gt; /boot/loader.conf&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Чтобы не перезагружать систему,&amp;nbsp;подгрузим соответствующие модуля:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;kldload /boot/kernel/linux.ko&lt;/strong&gt;&lt;br /&gt;
            # &lt;strong&gt;kldload /boot/kernel/linprocfs.ko&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Ну и собственно установка самого эмулятора:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cd /usr/ports/emulators/linux_base-fc4 &amp;amp;&amp;amp; make install clean &amp;amp;&amp;amp; rehash&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Подключаем псевдофайловую систему:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;echo &amp;quot;linproc /compat/linux/proc linprocfs rw 0 0&amp;quot; &amp;gt;&amp;gt; /etc/fstab&lt;/strong&gt;&lt;br /&gt;
            # &lt;strong&gt;mount linproc&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;После всех этих манипуляций повторно пытаемся установить &lt;strong&gt;htop&lt;/strong&gt;:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;# &lt;strong&gt;cd /usr/ports/sysutils/htop &amp;amp;&amp;amp; make install clean &amp;amp;&amp;amp; rehash&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;Установка проходит без сучка и задоринки... Запускаем &lt;strong&gt;htop&lt;/strong&gt; и знакомимся с его возможностями.&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/htop.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="118" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/htop.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Теперь более подробно. По умолчанию экран разбит на две части: системная статистика в верхней, и в нижней - потребление ресурсов отдельными процессами. С помощью раздела &lt;strong&gt;Setup&lt;/strong&gt; можно настроить, какие именно данные хотим получать. Нажмем &amp;quot;&lt;strong&gt;F2&lt;/strong&gt;&amp;quot;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/htop01.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="118" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/htop01.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Для перемещения к нужной опции меню можно использовать клавиши со стрелками, затем нажать клавиши от &amp;quot;&lt;strong&gt;F1&lt;/strong&gt;&amp;quot; до &amp;quot;&lt;strong&gt;F9&lt;/strong&gt;&amp;quot; [см. подсказки в нижней строке], чтобы изменить внешний вид индикатора, добавить, удалить или переместить их в различные части экрана. Например, если необходимо изменить вид индикатора времени, выделите его стрелками, последовательными нажатиями &amp;quot;&lt;strong&gt;Enter&lt;/strong&gt;&amp;quot; выбераем нужный вариант из доступных (Text/Текст, LED/ЖК-дисплей, Bar/Диаграмма и Graph/График) и затем &amp;quot;&lt;strong&gt;F10&lt;/strong&gt;&amp;quot; для выхода. Аналогично можно изменить любую категорию индикаторов.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Помимо выбора различных индикаторов и их внешнего вида, можно упростить просмотр информации, выбрав другую цветовую схему. Отметим &lt;strong&gt;Colors&lt;/strong&gt; в меню &lt;strong&gt;Setup&lt;/strong&gt; и переместитесь к списку цветов, выберите схему и активируйте её нажатием пробела (должна появиться отметка &lt;strong&gt;X&lt;/strong&gt;). Всё это, конечно, лишь косметика по сравнению с другими возможностями, но суть интерактивной природы &lt;strong&gt;Htop&lt;/strong&gt;, которая, собственно, и помогает наблюдать за приложениями и процессами, а также управлять ими, заключается в сортировке вывода и управлении набором отображаемых параметров.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Меню &lt;strong&gt;Setup&lt;/strong&gt; подскажет доступные&amp;nbsp;варианты, которые&amp;nbsp;можно выбрать для отображения:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/htop02.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="118" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/htop02.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Если какой-то столбец не нужен, его удаление сводится к тому, чтобы выделить его и нажать &amp;quot;&lt;strong&gt;F9&lt;/strong&gt;&amp;quot;. Не беспокойтесь - можно вернуть назад любой столбец, выбрав его в списке доступных (Available Columns) и нажав &amp;quot;&lt;strong&gt;F5&lt;/strong&gt;&amp;quot;. В зависимости от того, за чем наблюдаем, можно вывести все элементы, необходимые для решения конкретной задачи. Конечно, это поможет лишь в случае, если знаем, что означают все эти аббревиатуры, но обращение к &lt;strong&gt;man htop&lt;/strong&gt; даст сравнительно мало информации. В этой ситуации &lt;strong&gt;man top&lt;/strong&gt; предпочтительнее, и кроме того, многие из команд &lt;strong&gt;top&lt;/strong&gt; будут также работать и в &lt;strong&gt;htop&lt;/strong&gt;, но не все - так что экспериментируйте. &lt;strong&gt;Ctrl+W&lt;/strong&gt; в &lt;strong&gt;top&lt;/strong&gt; сохранит сделанные изменения, записав их в конфигурационный файл &lt;strong&gt;~/.toprc&lt;/strong&gt;, так что они не потеряются между сеансами работы и перезагрузками. В &lt;strong&gt;Htop&lt;/strong&gt; это, похоже, не работает, а значит, изменения, сделанные в меню &lt;strong&gt;Setup&lt;/strong&gt; (клавиша &amp;quot;&lt;strong&gt;F2&lt;/strong&gt;&amp;quot;) работают только в текущем сеансе и не сохраняются. При вызове &lt;strong&gt;Htop&lt;/strong&gt; можно использовать, как и в &lt;strong&gt;Top&lt;/strong&gt;, ключ &lt;strong&gt;d&lt;/strong&gt; для изменения задержки (интервала обновления экрана). Попробуйте &amp;quot;&lt;strong&gt;htop d 1&lt;/strong&gt;&amp;quot;. Не моргайте, иначе всё пропустите ;).&lt;/p&gt;
&lt;p class="rtejustify"&gt;Если по каким-нибудь причинам необходимо изменить приоритет некоторого приложения, &lt;strong&gt;Htop&lt;/strong&gt; предоставляет&amp;nbsp;функции &lt;strong&gt;nice/renice&lt;/strong&gt; более удобным способом, чем &lt;strong&gt;Top&lt;/strong&gt;. В последнем необходимо узнать идентификатор (&lt;strong&gt;PID&lt;/strong&gt;) процесса/приложения, прежде чем использовать эти команды. В &lt;strong&gt;Htop&lt;/strong&gt; прокрутим экран к желаемой цели и нажимаем &lt;strong&gt;F8&lt;/strong&gt; для понижения приоритета (т.е. увеличения значения &lt;strong&gt;nice&lt;/strong&gt;, максимальное значение - &lt;strong&gt;19&lt;/strong&gt;). Это может выполнить и простой пользователь, но если вы хотите повысить приоритет (значение &lt;strong&gt;nice&lt;/strong&gt; можно опустить до &lt;strong&gt;-20&lt;/strong&gt;),&amp;nbsp;необходимо работать с правами суперпользователя &lt;strong&gt;root&lt;/strong&gt;, иначе не сможем установить значение &lt;strong&gt;nice&lt;/strong&gt; ниже нуля.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Администраторам, да и обычным пользователям, часто нужно принудительно завершить какой-нибудь процесс или приложение. Запуск &lt;strong&gt;Htop&lt;/strong&gt; в окне терминала избавит&amp;nbsp;от головной боли. В примере я выделяю процесс&amp;nbsp;&lt;strong&gt;mpd5&lt;/strong&gt; как кандидата на получение &amp;quot;серебряной пули&amp;quot;, затем жму &amp;quot;&lt;strong&gt;F9&lt;/strong&gt;&amp;quot; и получаю возможность &amp;quot;выбрать оружие&amp;quot;:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/htop03.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="118" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/htop03.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Уничтожаете ли вы какое-нибудь приложение или задаёте приоритет с помощью &lt;strong&gt;nice/renice&lt;/strong&gt;, очень полезной оказывается возможность фильтрации по пользователям. Жмем клавишу &amp;quot;&lt;strong&gt;U&lt;/strong&gt;&amp;quot;, и получаем список всех пользователей системы, с помощью которого можно&amp;nbsp;сузить перечень отображаемых процессов.&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/htop04.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="200" height="118" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/htop04.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;По нажатию &amp;quot;&lt;strong&gt;F6&lt;/strong&gt;&amp;quot; есть возможность отсортировать вывод по различным категориям, таким как Users/Пользователи, PID/Идентификаторы процесса, Priority/Приоритет. При этом ничего не фильтруется, а просто изменяется порядок списка. Можно совмещать эти два фильтра. Если сначала нажмем &amp;quot;&lt;strong&gt;U&lt;/strong&gt;&amp;quot; для выбора пользователя,&amp;nbsp;можно затем использовать &amp;quot;F6&amp;quot; для сортировки процессов заданного пользователя согласно категориям, таким как приоритет, потребление памяти и процессорного времени.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="rteright"&gt;&lt;strong&gt;Используемые материалы:&lt;/strong&gt;&lt;/p&gt;
&lt;p class="rteright"&gt;&lt;a rel="nofollow" href="http://www.freesoftwaremagazine.com/articles/htop_tip_top_ncurses_interactive_tool_system_monitoring_your_desktop"&gt;Htop, a tip-top ncurses interactive tool&lt;br /&gt;
for system monitoring your desktop &lt;/a&gt;&lt;/p&gt;
&lt;p class="rteright"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/htop#comments</comments>
 <pubDate>Fri, 02 Mar 2012 02:36:11 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">451 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Top - утилита мониторинга. Полезные мелочи.</title>
 <link>http://muff.kiev.ua/content/top</link>
 <description>&lt;p class="rtejustify"&gt;Утилита &lt;strong&gt;top&lt;/strong&gt; однозначно используется каждым системным администратором и есть довольно полезным инструментом. Попробуем сделать небольшую &amp;quot;шпаргалку&amp;quot; по использованию утилиты &lt;strong&gt;top&lt;/strong&gt;. Конечно же можно узнать все это,&amp;nbsp;ознакомившись с предложенным &lt;strong&gt;help&lt;/strong&gt; (необходимо нажать &amp;quot;&lt;strong&gt;h&lt;/strong&gt;&amp;quot; во время работы утилиты), или же ознакомиться с &lt;strong&gt;man top&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Также стоит иметь ввиду, что &lt;strong&gt;top&lt;/strong&gt; постоянно модифицируется вместе с &lt;strong&gt;FreeBSD&lt;/strong&gt;, от версии к версии. Что-то добавляется, а что-то исчезает. Данные возможности проверялись на &lt;strong&gt;FreeBSD 8.0&lt;/strong&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li class="rtejustify"&gt;Довольно часто нужно &amp;quot;отсеять&amp;quot; только те процессы,&amp;nbsp;которые &amp;quot;грузят&amp;quot; систему.&amp;nbsp; Для этого запускаем утилиту с ключем &amp;quot;&lt;strong&gt;-I&lt;/strong&gt;&amp;quot;, либо же во время работы утилиты,&amp;nbsp;нажать &amp;quot;&lt;strong&gt;i&lt;/strong&gt;&amp;quot;.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Многие процессы используют потоки, которые &lt;strong&gt;top&lt;/strong&gt; не выводит отдельными строками, а только показывает количество потоков у данного процесса в поле &lt;strong&gt;THR&lt;/strong&gt;. Для того,&amp;nbsp;чтобы каждый поток отображался отдельно, запускаем &lt;strong&gt;top&lt;/strong&gt; с ключем &amp;quot;&lt;strong&gt;-H&lt;/strong&gt;&amp;quot;, или же нажать &amp;quot;&lt;strong&gt;H&lt;/strong&gt;&amp;quot; во время работы утилиты.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;&lt;strong&gt;Jail&lt;/strong&gt; - это механизм изоляции различных окружений на одной машине. T&lt;strong&gt;op&lt;/strong&gt; позволяет определить какому из &lt;strong&gt;jail&lt;/strong&gt; принадлежит процесс,&amp;nbsp;используя &lt;strong&gt;jail id&lt;/strong&gt;. &lt;strong&gt;Jail id &lt;/strong&gt;0 &amp;ndash; это &lt;strong&gt;host&lt;/strong&gt;-система, остальные номера&amp;nbsp;можно просмотреть, используя комманду &lt;strong&gt;jls&lt;/strong&gt;. Для отображения &lt;strong&gt;jail id&lt;/strong&gt;, необходимо запустить утилиту &lt;strong&gt;top&lt;/strong&gt; с ключем &amp;quot;&lt;strong&gt;-j&lt;/strong&gt;&amp;quot;,&amp;nbsp;или во время работы утилиты нажать &amp;quot;&lt;strong&gt;j&lt;/strong&gt;&amp;quot;.&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Иногда необходимо обнаружить утилизирующее жесткий диск приложение. &lt;strong&gt;Top&lt;/strong&gt; поможет и в этом случае. Для этого запускаем &lt;strong&gt;top&lt;/strong&gt; с ключами &amp;quot;&lt;strong&gt;-m io&lt;/strong&gt;&amp;quot;. Или же нажать &amp;quot;&lt;strong&gt;m&lt;/strong&gt;&amp;quot; во время работы утилиты.&amp;nbsp;Это переведет &lt;strong&gt;top&lt;/strong&gt; в режим отображения &lt;strong&gt;IO&lt;/strong&gt; активности,&amp;nbsp;вместо &lt;strong&gt;CPU&lt;/strong&gt;. &lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Для отображения системных процессов,&amp;nbsp;необходимо запустить &lt;strong&gt;top&lt;/strong&gt; с опцией &amp;quot;&lt;strong&gt;-S&lt;/strong&gt;&amp;quot;, либо же нажать &amp;quot;&lt;strong&gt;S&lt;/strong&gt;&amp;quot;&amp;nbsp;во время работы утилиты&amp;nbsp;. Это пригодится,&amp;nbsp;например,&amp;nbsp;если необходимо просмотреть какую нагрузку создают прерывания сетевых карт...&lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;На современных системах обычно по несколько процессоров, да и ядер обычно несколько. Однако,&amp;nbsp;даже с включенной поддержко &lt;strong&gt;SMP&lt;/strong&gt;, утилита &lt;strong&gt;top&lt;/strong&gt; все равно выводит информацию о процессоре в одну строку. Чтобы &lt;strong&gt;top&lt;/strong&gt; отобразил информацию по каждому ядру/процессору, необходимо запускать утилиту с ключем &amp;quot;&lt;strong&gt;-P&lt;/strong&gt;&amp;quot;. &lt;br /&gt;
    &amp;nbsp;&lt;/li&gt;
&lt;li class="rtejustify"&gt;Можно задать частоту обновления. Для этого необходимо запустить &lt;strong&gt;top&lt;/strong&gt; с ключем &amp;quot;&lt;strong&gt;-s X&lt;/strong&gt;&amp;quot;,&amp;nbsp;где &lt;strong&gt;Х&lt;/strong&gt; - время в секундах.&amp;nbsp;Для изменения частоты обновления во время работы утилиты,&amp;nbsp;необходимо нажать &amp;quot;&lt;strong&gt;s&lt;/strong&gt;&amp;quot;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Казалось бы мелочи,&amp;nbsp;но буквально каждый день они здорово помагают при мониторинге серверов.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/top#comments</comments>
 <pubDate>Thu, 01 Mar 2012 23:42:05 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">450 at http://muff.kiev.ua</guid>
</item>
<item>
 <title>Perl - проверка установленных модулей</title>
 <link>http://muff.kiev.ua/content/perl</link>
 <description>&lt;p class="rtecenter"&gt;&lt;img alt="Perl" width="140" height="152" src="http://muff.kiev.ua/files/Perl-logo.jpg" /&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Понадобилось узнать,&amp;nbsp;какие модули &lt;strong&gt;Perl&lt;/strong&gt; установлены на удаленном сервере. Для быстрой проверки необходимо выполнить несколько действий.&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;Проверка в консольном режиме&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Создадим скрипт &lt;strong&gt;Perl_module_check.pl&lt;/strong&gt; следующего содержания:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td bgcolor="#333333"&gt;
&lt;pre&gt;&lt;span style="color: #00ff00"&gt;&lt;strong&gt;#!/usr/bin/perl

&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: #3366ff"&gt;&lt;strong&gt;use ExtUtils::Installed;
my $instmod = ExtUtils::Installed-&amp;gt;new();
foreach my $module ($instmod-&amp;gt;modules())
{ my $version = $instmod-&amp;gt;version($module) || &amp;quot;-&amp;quot;; print &amp;quot;$module --&amp;gt; $version \r\n&amp;quot;; }&lt;/strong&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;Запустим скрипт и посмотрим на результаты его работы:&lt;/p&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;# &lt;strong&gt;perl Perl_module_check.pl&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;
BSD::Resource --&amp;gt; 1.2904
Bundle::NetSNMP --&amp;gt; -
Crypt::CBC --&amp;gt; 2.30
Crypt::DES --&amp;gt; 2.05
Crypt::Rijndael --&amp;gt; 1.09
Crypt::SSLeay --&amp;gt; 0.58
DBD::mysql --&amp;gt; 4.019
DBI --&amp;gt; 1.616
Digest::HMAC --&amp;gt; 1.03
Digest::SHA1 --&amp;gt; 2.13
Getopt::Long --&amp;gt; 2.38
Locale::gettext --&amp;gt; 1.05
Net::SNMP --&amp;gt; v6.0.1
Perl --&amp;gt; 5.10.1
RRDp --&amp;gt; 1.4004
RRDs --&amp;gt; 1.4004
Storable --&amp;gt; 2.30
Term::ANSIColor --&amp;gt; 3.01
Test::Manifest --&amp;gt; 1.23
URI --&amp;gt; 1.59
XML::Parser --&amp;gt; 2.41
mod_perl2 --&amp;gt; 2.000005&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="rtejustify"&gt;&lt;span style="color: #ff0000"&gt;&lt;em&gt;&lt;strong&gt;Проверка на удаленном web-сервере&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;Если необходимо узнать, какие модуля Perl поддерживаются на удаленном веб-сервере и доступа к консоли сервера нету, то необходимо создать скрипт &lt;strong&gt;Perl_module_check.cgi&lt;/strong&gt; следующего содержания:&lt;/p&gt;
&lt;p class="rtejustify"&gt;
&lt;table border="1" cellspacing="1" cellpadding="1" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td bgcolor="#333333"&gt;
&lt;p&gt;&lt;span style="color: #00ff00"&gt;&lt;strong&gt;#!/usr/bin/perl&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;            &lt;span style="color: #3366ff"&gt;&lt;strong&gt;print &amp;quot;Content-type: text/html\n\n&amp;quot;;&lt;br /&gt;
            print &amp;quot;&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Installed Perl Modules&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;&amp;lt;table width=\&amp;quot;300px\&amp;quot; border=1&amp;gt;&amp;lt;td&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Module&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Version&amp;lt;/td&amp;gt;&amp;quot;;&lt;br /&gt;
            use ExtUtils::Installed;&lt;br /&gt;
            my $instmod = ExtUtils::Installed-&amp;gt;new();&lt;br /&gt;
            foreach my $module ($instmod-&amp;gt;modules())&lt;br /&gt;
            { my $version = $instmod-&amp;gt;version($module) || &amp;quot;-&amp;quot;; print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;$module&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;$version&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \r\n&amp;quot;; }&lt;br /&gt;
            print &amp;quot;&amp;lt;/table&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;quot;;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p class="rtejustify"&gt;Потом этот скрипт необходимо поместить в родительский каталог сайта (например,&amp;nbsp;используя&amp;nbsp;&lt;strong&gt;FTP&lt;/strong&gt;) и выставить права &lt;strong&gt;755&lt;/strong&gt;. Также необходимо удостовериться, что даный виртуальный хост настроен&amp;nbsp; на работу с &lt;strong&gt;CGI&lt;/strong&gt;.&lt;/p&gt;
&lt;p class="rtejustify"&gt;Открываем в окне&amp;nbsp;браузера адресс&amp;nbsp;&lt;a href="http://имя_домена_здесь/Perl_module_check.cgi"&gt;&lt;strong&gt;http://&lt;span style="color: #ff0000"&gt;имя_домена_здесь&lt;/span&gt;/Perl_module_check.cgi&lt;/strong&gt;&lt;/a&gt;. Если веб-сервер корректно настроен, то в результате имеем примерно такую картину:&lt;/p&gt;
&lt;p class="rtecenter"&gt;&lt;a class="thickbox" href="http://muff.kiev.ua/files/imagepicker/1/perl-modules-web.png"&gt;&lt;img class="imgp_img" alt="Картинки" width="104" height="200" src="http://muff.kiev.ua/files/imagepicker/1/thumbs/perl-modules-web.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="rtejustify"&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://muff.kiev.ua/content/perl#comments</comments>
 <pubDate>Mon, 27 Feb 2012 16:14:09 +0000</pubDate>
 <dc:creator>muff</dc:creator>
 <guid isPermaLink="false">449 at http://muff.kiev.ua</guid>
</item>
</channel>
</rss>

