КОНФИГУРИРОВАНИЕ РОУТЕРОВ CISCO(1)
Часть 1 Часть 2
КОНФИГУРИРОВАНИЕ РОУТЕРОВ CISCO
Роутеры фирмы Cisco являются весьма надежным оборудованием и по удобству
конфигруирования, по мнению автора, превосходят своих конкурентов, правда, и
стоимость их на 20% превышает аналоги других производителей в классе
коммутаторов и роутеров для компаний среднего звена.
В статье мы рассмотрим логическое деление блока адресов выделенного ISP на подсети,
повторяющие структуру компании по отделам, конфигурирование роутера серии
Cisco 2500 для организации доступа небольшой компании в Интернет с
подключением по сихронному каналу 256K к ISP и фильтрацией IP пакетов.
Наш роутер будет иметь один задействованный серийный порт для подключения
к ISP (Serial 0) и один Ethernet порт (е0), смотрящий в локальную сеть
компании, под которую ISP выделил сеть на 254 хоста.
1. Начальное конфигурирование роутера
На маршрутизаторах Cisco работает высокопроизводительная и созданная
с нуля операционная система IOS, находящаяся в энергонезависимой памяти (flash).
Типичная модель серии 2500 имеет 1 Ethernet порт подключаемый к HUB-у или
коммутатор в локальной сети через трансивер AUI->UTP и два серийных порта
для подключения к глобальным каналам (Seriаl 0, Serial 1). Имена интерфейсов
можно указывать как Ethernet0 или e 0. Если это модульный коммутатор Catalyst
то указывается сначала тип интерфейса, затем слот а затем порт.
Например 3-я ethernet плата и 2 порт на плате указывается как "e 3/2".
Помимо этого имеется консольный порт для конфигурирования роутера
(включаемый в серийный порт компьютера) и дополнительно AUX порт для
подключения модема. Конфигурирования роутера можно производить как через
консольный порт, AUX порт и через сессию telnet .
Более новые версии IOS позволяют работать с роутером по SSH сеансу. Но при первой загрузке роутер
требуется сконфигурировать через консольный порт. Для этого установив
скорость порта Serial в 9600 на UNIX-хосте начинаем конфигурирование в
терминальной программе. Например это может быть tip, cu, minicom. Для tip
последние две строчки конфига /etc/remote должны выглядеть так :
# Hardwired line
cuaa0:dv=/dev/cuaa0:br#9600:
cuaa1:dv=/dev/cuaa1:br#9600:
Подсоединив консольный кабель (идет в поставке) к роутеру (порт CON) и
другой конец через преходник к ПК заходим на консоль Cisco роутера :
bash-2.04#tip cuaa0
Затем включаем роутер и видим, что сначала загружается начальный
загрузчик bootstrap :
System Bootstrap, Version 5.2(8a), RELEASE SOFTWARE
Copyright (c) 1986-1995 by cisco Systems
2500 processor with 16384 Kbytes of main memory
F3: 3268680+81304+204996 at 0x3000060
Restricted Rights Legend
Use, duplication, or disclosure by the Government is
subject to restrictions as set forth in subparagraph
(c) of the Commercial Computer Software - Restricted
Rights clause at FAR sec. 52.227-19 and subparagraph
(c) (1) (ii) of the Rights in Technical Data and Computer
Software clause at DFARS sec. 252.227-7013.
cisco Systems, Inc.
170 West Tasman Drive
San Jose, California 95134-1706
Дальше начальный загрузчик загружает саму операционную систему IOS из
флеша (flash) :
Cisco Internetwork Operating System Software
IOS (tm) 3000 Software (IGS-I-L), Version 11.0(4), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-1995 by cisco Systems, Inc.
Compiled Mon 18-Dec-95 17:49 by alanyu
Image text-base: 0x0301C8DC, data-base: 0x00001000
cisco 2500 (68030) processor (revision D) with 16380K/2048K bytes of memory.
Processor board ID 02413443, with hardware revision 00000000
Bridging software.
X.25 software, Version 2.0, NET2, BFE and GOSIP compliant.
1 Ethernet/IEEE 802.3 interface.
2 Serial network interfaces.
32K bytes of non-volatile configuration memory.
4096K bytes of processor board System flash (Read ONLY)
Press RETURN to get started!
Cisco Internetwork Operating System Software
IOS (tm) 3000 Software (IGS-I-L), Version 11.0(4), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-1995 by cisco Systems, Inc.
Compiled Mon 18-Dec-95 17:49 by alanyu
Надо сказать что IOS можно загрузить не только из FLASH но и из ОЗУ
роутера а также с TFTP сервера.
Поскольку это первая загрузка роутера то нам предлагают пройти этапы
конфигурирования роутера (эта программа запускается как setup). Как видно
ниже процесс конфигурирования достаточно прозрачен и прост. После того как
вы ответите на вопросы программа построит конфиг и запишет его в NVRAM и
начнет перезагружаться.
Итак начинаем конфигурирование интерфейсов в программе setup:
--- System Configuration Dialog ---
At any point you may enter a question mark '?' for help.
Refer to the 'Getting Started' Guide for additional help.
Use ctrl-c to abort configuration dialog at any prompt.
Default settings are in square brackets '[]'.
Would you like to enter the initial configuration dialog? [yes]: yes
Просматриваем список интерфейсов на нашем роутере :
First, would you like to see the current interface summary? [yes]:
Any interface listed with OK? value "NO" does not have a valid configuration
Interface IP-Address OK? Method Status Protocol
Ethernet0 unassigned NO not set up up
Serial0 unassigned NO not set down down
Serial1 unassigned NO not set down down
Configuring global parameters:
Имя роутера :
Enter host name [Router]:
Вводим так enable-secret для доступа к конфигурированию роутера :
The enable secret is a one-way cryptographic secret used
instead of the enable password when it exists.
Enter enable secret: s1
Затем вводим enable-password (оставленно для совместимости со старыми
версиями IOS) :
The enable password is used when there is no enable secret
and when using older software and some boot images.
Enter enable password: s2
Вводим пароль на виртульный терминал :
Enter virtual terminal password: s2
Разрешаем SNMP для того чтобы мы могли получить статистику :
Configure SNMP Network Management? [yes]: yes
Community string [public]: public1
Наш роутер имеет только поодежку IP (без IPX), его мы и конфигурируем :
Configure IP? [yes]: yes
Поскольку с ISP у нас роутинг будет статический, мы не включаем протоколы
маршрутизации :
Configure IGRP routing? [yes]: no
Configure RIP routing? [no]:
Задаем IP адресс на Ethernet интерфейсе, оставляя интерфейс Serial 0 as unnumbered
(что это такое разберем позже) :
Configuring interface parameters:
Configuring interface Ethernet0:
Is this interface in use? [yes]:
Configure IP on this interface? [yes]:
IP address for this interface: 1 200.1 200.200.1
Number of bits in subnet field [0]:
Class C network is 200.200.200.0, 0 subnet bits; mask is 255.255.255.0
Configuring interface Serial0:
Is this interface in use? [yes]:
Configure IP on this interface? [yes]: no
Отключаем Serial1 :
Configuring interface Serial1:
Is this interface in use? [yes]: no
The following configuration command script was created:
И вот в итоге мы получаем такой файл конфигурации :
hostname Router
enable secret 5 $1$FE5i$sIvZuXxqJWjFllqA5heFn1
enable password s2
line vty 0 4
password s2
snmp-server community public1
!
ip routing
!
interface Ethernet0
ip address 200.200.200.1 255.255.255.0
!
interface Serial0
no ip address
!
interface Serial1
shutdown
no ip address
!
end
Затем отвечаем положительно на вопрос о записи этой конфигурации в
NVRAM и запуске ее :
Use this configuration? [yes/no]: yes
Building configuration...
[OK]Use the enabled mode 'configure' command to modify this configuration.
Press RETURN to get started!
%SYS-5-RESTART: System restarted --
Cisco Internetwork Operating System Software
IOS (tm) 3000 Software (IGS-I-L), Version 11.0(4), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-1995 by cisco Systems, Inc.
Compiled Mon 18-Dec-95 17:49 by alanyu
Router>
Привыкайте к тому что Вам придется 90% времени работать с тектовым
конфигом, хотя в природе есть такой програмный продукт как CiscoWorks но
он хорош только при наличии огромного числа роутеров (peers).
Итак мы находимся в консоли роутера. Все наши действия выполняются
интерпретатором команд EXEC. Выполнение команд ведется в одном из двух
режимов - пользовательском и привилегированном. Пользовательский режим
позволяет собирать общую информацию о роутере при вводе команд на
консоли, например наш роутер имеет приглашение :
Router>
введя команду show version мы увидим с чем мы работаем :
Router>show version
Cisco Internetwork Operating System Software
IOS (tm) 3000 Software (IGS-I-L), Version 11.0(4), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-1995 by cisco Systems, Inc.
Compiled Mon 18-Dec-95 17:49 by alanyu
Image text-base: 0x0301C8DC, data-base: 0x00001000
ROM: System Bootstrap, Version 5.2(8a), RELEASE SOFTWARE
ROM: 3000 Bootstrap Software (IGS-RXBOOT), Version 10.2(8a), RELEASE SOFTWARE (fc1)
Router uptime is 3 days, 1 hour, 20 minutes
System restarted by error - Software forced crash, PC 0x311B808
System image file is "flash:igs-in-l.110-4", booted via flash
cisco 2500 (68030) processor (revision D) with 16380K/2048K bytes of memory.
Processor board ID 02413443, with hardware revision 00000000
Bridging software.
X.25 software, Version 2.0, NET2, BFE and GOSIP compliant.
1 Ethernet/IEEE 802.3 interface.
2 Serial network interfaces.
32K bytes of non-volatile configuration memory.
4096K bytes of processor board System flash (Read ONLY)
Configuration register is 0x2102
Состояние всех интерфейсов можно просмотреть командой :
Router>show int
Ethernet0 is up, line protocol is up
Hardware is Lance, address is 0000.0c5d.8231 (bia 0000.0c5d.8231)
Internet address is 200.200.200.1 255.255.255.0
MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec, rely 255/255, load 1/255
Encapsulation ARPA, loopback not set, keepalive set (10 sec)
ARP type: ARPA, ARP Timeout 4:00:00
Last input 0:00:10, output 0:00:09, output hang never
Last clearing of "show interface" counters never
Output queue 0/40, 0 drops; input queue 0/75, 0 drops
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
16094 packets input, 1867191 bytes, 0 no buffer
Received 16094 broadcasts, 0 runts, 0 giants
16 input errors, 16 CRC, 16 frame, 0 overrun, 0 ignored, 0 abort
0 input packets with dribble condition detected
30833 packets output, 2896155 bytes, 0 underruns
3 output errors, 416 collisions, 1 interface resets, 0 restarts
0 output buffer failures, 0 output buffers swapped out
Serial0 is down, line protocol is down
Hardware is HD64570
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, rely 255/255, load 1/255
Encapsulation HDLC, loopback not set, keepalive set (10 sec)
Last input never, output never, output hang never
Last clearing of "show interface" counters never
Output queue 0/40, 0 drops; input queue 0/75, 0 drops
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
0 packets input, 0 bytes, 0 no buffer
Received 0 broadcasts, 0 runts, 0 giants
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
0 packets output, 0 bytes, 0 underruns
0 output errors, 0 collisions, 8805 interface resets, 0 restarts
0 output buffer failures, 0 output buffers swapped out
0 carrier transitions
DCD=up DSR=up DTR=down RTS=down CTS=up
Serial1 is administratively down, line protocol is down
Hardware is HD64570
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, rely 255/255, load 1/255
Encapsulation HDLC, loopback not set, keepalive set (10 sec)
Last input never, output never, output hang never
Last clearing of "show interface" counters never
Input queue: 0/75/0 (size/max/drops); Total output drops: 0
Output queue: 0/64/0 (size/threshold/drops)
Conversations 0/0 (active/max active)
Reserved Conversations 0/0 (allocated/max allocated)
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
0 packets input, 0 bytes, 0 no buffer
Received 0 broadcasts, 0 runts, 0 giants
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
0 packets output, 0 bytes, 0 underruns
0 output errors, 0 collisions, 4 interface resets, 0 restarts
0 output buffer failures, 0 output buffers swapped out
0 carrier transitions
DCD=down DSR=down DTR=down RTS=down CTS=down
Если ввести сокращенно команду sh int e0, то вы увидите информацию только
по Ethernet интерфейсу. Как вы видите этой информации часто хватает чтобы
определить причину неисправности какого либо интерфейса или кабельного
соединения. По команде show prot вы увидите какие протоколы активизированы
на интерфейсах. Напрмер сейчас у нас нет соединения с ISP и на серийных
интерфейсах у нас сплошные down. Заметьте что Serial1 у нас
administratively down как неиспользуемый. Подробный список команд в
пользовательском режиме можно получить введя команду "?" :
Router>?
Exec commands:
connect Open a terminal connection
disable Turn off privileged commands
disconnect Disconnect an existing network connection
enable Turn on privileged commands
exit Exit from the EXEC
help Description of the interactive help system
lock Lock the terminal
login Log in as a particular user
logout Exit from the EXEC
mrinfo Request neighbor and version information from a multicast
router
mstat Show statistics after multiple multicast traceroutes
mtrace Trace reverse multicast path from destination to source
name-connection Name an existing network connection
pad Open a X.29 PAD connection
ping Send echo messages
ppp Start IETF Point-to-Point Protocol (PPP)
resume Resume an active network connection
rlogin Open an rlogin connection
show Show running system information
slip Start Serial-line IP (SLIP)
telnet Open a telnet connection
terminal Set terminal line parameters
traceroute Trace route to destination
tunnel Open a tunnel connection
where List active connections
x3 Set X.3 parameters on PAD
Большая часть работ, такая как конфигурирование маршрутизации, программное
выключение интерфейсов и создание ACL (списки доступа), измение
глобального конфига осуществляются в привелигерованном режиме. Для этого
требуется знать при велигерованный пароль. Перейдя в этот режим
командой enable и введя пароль который мы ввели на этапе кофигурирования
роутера программой setup мы увидим что список команд здесь более шире :
Router>enable
Password:
Как видите курсор меняется на "#" (почти как у root-a в UNIX shell) :
Router#?
Exec commands:
bfe For manual emergency modes setting
clear Reset functions
clock Manage the system clock
configure Enter configuration mode
connect Open a terminal connection
copy Copy configuration or image data
debug Debugging functions (see also 'undebug')
disable Turn off privileged commands
disconnect Disconnect an existing network connection
enable Turn on privileged commands
erase Erase flash or configuration memory
exit Exit from the EXEC
help Description of the interactive help system
lock Lock the terminal
login Log in as a particular user
logout Exit from the EXEC
mbranch Trace multicast route down tree branch
mrbranch Trace reverse multicast route up tree branch
mrinfo Request neighbor and version information from a multicast
router
mstat Show statistics after multiple multicast traceroutes
name-connection Name an existing network connection
no Disable debugging functions
pad Open a X.29 PAD connection
ping Send echo messages
ppp Start IETF Point-to-Point Protocol (PPP)
reload Halt and perform a cold restart
resume Resume an active network connection
rlogin Open an rlogin connection
rsh Execute a remote command
send Send a message to other tty lines
setup Run the SETUP command facility
show Show running system information
slip Start Serial-line IP (SLIP)
start-chat Start a chat-script on a line
systat Display information about terminal lines
telnet Open a telnet connection
terminal Set terminal line parameters
test Test subsystems, memory, and interfaces
traceroute Trace route to destination
tunnel Open a tunnel connection
undebug Disable debugging functions (see also 'debug')
verify Verify checksum of a Flash file
write Write running configuration to memory, network, or terminal
x3 Set X.3 parameters on PAD
В этом режиме можно просмотреть файл конфигурации и редактировать
его :
Router#sh conf
Using 465 out of 32762 bytes
!
version 11.0
service config
service udp-small-servers
service tcp-small-servers
!
hostname Router
!
enable secret 5 $1$FE5i$sIvZuXxqJWjFllqA5heFn1
enable password s2
!
!
interface Ethernet0
ip address 200.200.200.1 255.255.255.0
!
interface Serial0
no ip address
no fair-queue
snmp-server community public1 RO
!
interface Serial1
no ip address
shutdown
!
line con 0
exec-timeout 0 0
line aux 0
transport input all
line vty 0 4
password s2
login
!
end
Войдем в режим редактирования глобального файла командой configure
terminal и запретим напрмер использование small serivices, поскольку наш
роутер должен будет выполнять роль шлюза в интернет и одновременно
firewall-a (об этом в третьем разделе).
Сначала посмотрим включены ли эти сервисы командой sh conf и увидим
строчки :
service udp-small-servers
service tcp-small-servers
Заходим в режим редактирования :
Router#config terminal
Отключаем эти сервисы вводом префикса "no" и полного написания команды:
Router(config)#no service udp-small-servers
Router(config)#no service tcp-small-servers
Затем выходим из режима редактирования :
Router(config)#exit
Таким же образом можно быстро отключить какой либо интерфейс зайдя в режим
конфигурирования интерфейса:
Router#configure terminal
Router(config)#interface ethernet 0
Router(config-if)#shutdown
Router(config-if)#exit
Router(config)#exit
Router#write memory
Building configuration ...
Если вы введете no shutdown то интерфейс будет активизирован.
В более новых версиях IOS команда write memory заменена на copy-runing
config startup-config, т.е текущий файл конфигурации записывается в
энергонезависимую память (NVRAM). Другая команда write terminal показыват
действующую конфигурацию (в новых версия IOS - show running config).
На этом этапе нам надо убедиться что сетевой интерфейс Ethernet 0 у нас
активирован его IP адрес - 200.200.200.1 пингуется из локальной сети.
Теперь перейдем к рассмотрению Serail интерфейсов. В большинстве случаев
подключени синхронных интерфесов клиента и провайдера производится по V.35
интерфейсу и серийные порты конфмгурируются как unnunbered. Это дает возможность
вести политику доступа в пределах одного адресного пространства манипулируя трафиком
на одном ethernet интерфейсе. Для этого нам необходимо сконфигурировать интерфейс
Serial 0 следующим образом, без присвоения ему IP адреса :
Router#conf t
Router(config)#int s0
Router(config-if)#ip unnumbered Ethernet 0
Router(config-if)#exit
Router(config)#exit
Router#wr mem
IP адресс ethernet интерфеса нашего ISP 200.200.199.1 (а мы договорились
что у ISP Serial скофигрурен как непронумерованный). Для того чтобы мы могли работать
с ресурсами Интернета мы пропишем статический роутинг на этот IP через интерфес Serial 0:
Router(config)#ip route 0.0.0.0 0.0.0.0 200.200.200.199.1 Serial0
Router#wr mem
Провайдер со своей стороны прописывает роутинг на своем маршрутизаторе на IP адрес нашего
роутера (200.200.200.1) на всю нашу сеть.
Во всех хостах локальной сети мы должны поставить IP адрес нашего роутера
(200.200.200.1) как адрес шлюза в интернет. Маска же должна
соответствовать той подсети в которой находится данных хост, согласно
логической структуре компании.
При поступлении пакета из внутреней сети наш роутер будет проверяет на адресован ли он в локальную
сеть по заголовку IP пакета, если это не так то он адресует это пакет во
внешнюю сеть через IP адрес роутера ISP. Сам же провайдер работает конечно
не с применением статической маршрутизации а динамической (как правило
в использованием BGP, IGRP протоколов).
Динамическая маршрутизация достаточно сложная тема и она будет освещаться на void.ru в отдельной
статье. Теперь перейдем к пониманию принциппа деления подсетей на сети,
что необходимо нам для организовации списки доступа по подсетям согласно отделам
компании.
neo
Часть 1 Часть 2
|