Vyatta: роутер на основе x86 PC и Debian |
![]() |
Добавил(а) microsin |
Vyatta представляет собой открытую свободно распространяемую систему (под лицензией GNU), позволяющую настроить роутер на основе обычного компьютера. Vyatta позиционируется как альтернатива роутерам Cisco. Действительно, поддерживаются многие "серьезные" протоколы, как например OSPF, BGP, VRRP и т. д. Загрузка при этом осуществляется с CD-ROM, а конфигурация может храниться на flash-диске. Есть возможность установить систему на HDD для ускорения работы. Система основана на Debian Linux. ПО, осуществляющее роутинг, называется Open Flexible Router (OFR). Документация доступна на http://www.vyatta.com/documentation/ (для полного доступа к документации нужна регистрация - просто вводите произвольные данные) и http://www.openmaniak.com/vyatta_tutorial.php. Vyatta может загружаться с CD-ROM, и конфигурацию читать с floppy и только с floppy, или может загружаться с flash или HDD, в этом случае конфигурация сохраняется на flash или HDD. 1. Прожигаем образ vyatta-livecd-vc3.iso на болванку. Загружается с неё. Управлять можно непосредственно с клавиатуры или через COM1-порт. 2. После загрузки появится запрос пароля. Уже сконфигурировано 2 пользователя: Если зайти под root, то будет доступна командная строка Linux. Можно ввести команду xorpsh, что запустит командную оболочку конфигурирования роутера (команды немного напоминают CLI Cisco). Если зайти под пользователем vyatta, то команда xorpsh запустится автоматически. Локально доступны (как обычно в *nix) другие консоли по кнопкам Alt+F1, F2... 3. Определяемся, как будет в дальнейшем происходить загрузка vyatta. У нас есть следующие варианты для выбора: На сегодняшний день (январь 2008) никаких других вариантов загрузки и хранения конфигурации в vyatta не реализовано. Для загрузки с flash или HDD нужно место под системный раздел не менее 450 мегабайт и под раздел конфигурации не менее 10 мегабайт. Таким образом, flash или HDD должны быть размером не менее 460 мегабайт. Мне подошел только вариант загрузки с жесткого диска, поскольку флопика у меня не было, а ставиться на USB-флешку vyatta отказалась категорически (так и не разобрался, почему - USB диск видит, даже видит его размер, а на при начале копирования данных на раздел виснет). 4. Заходим под root и выполняем команду install-system. Запустится консольный мастер, под руководством которого ставите систему. Там ничего сурового нет - просто надо указать устройство, на которое будем ставить (я выбрал HDD на устройстве /dev/sda), тупо ответить на все вопросы и дождаться окончания копирования файлов. Процесс установки происходит на удивление быстро - чаю попить не успеете. 5. Вытаскиваем загрузочный CD, перезагружаемся с HDD. Логинимся под root. Теперь надо определиться с тем, какой сетевой интерфейс будет внутренний (LAN), а какой внешний. Используя команду ifconfig, ifconfig -s смотрим наличие интерфейсов и проверяем их работоспособность по вставлении выдергивании сетевого кабеля. У меня в системе было 2 физических сетевых интерфейса eth0 (я его определил для LAN) и eth1 (для WAN). 6. Запускаем программу конфигурирования vyatta командой xorpsh. Получаем приглашение root@vyatta>. Если ввести ?, то получим список доступных команд (совсем как в Cisco). Вводим команду configure. Приглашение меняется на root@vyatta#. 7. Настраиваем адрес на внутреннем интерфейсе eth0. Вводим: Соединяем скрестным кабелем интерфейс eth0 с сетевым интерфейсом компьютера, на котором настроен адрес 192.168.7.1, проверяем, как ходит ping (эта команда доступна, если выйти обратно в приглашение root@vyatta> командой exit). 8. Запускаем GUI-интерфейс управления командой После этого в строке браузера на другом компьютере вводим http://192.168.7.254, должен отобразиться интерфейс управления vyatta. Залогиниться там можно под логином vyatta, пароль vyatta. 9. Таким же образом можно включить доступ по telnet и ssh. Это делается командами set service telnet и set service ssh соответственно (про commit в конце не забываем). 10. Сохраняем конфигурацию на диск. Для этого просто вводим команду save. При этом конфигурация сохраняется в файл /opt/vyatta/etc/config/config.boot. Эта конфигурация будет автоматически загружаться при старте vyatta. Файл конфигурации - это простой текстовый файл, который можно просмотреть командой more /opt/vyatta/etc/config/config.boot (если выйти из утилиты xorpsh). Если хотим записать конфигурацию с другим именем, например /opt/vyatta/etc/config/080129backup, то вводим команду 11. Сколько я ни пробовал админить по web-интерфейсу, но мне это казалось недобным - отсутствует подсказка по командам. Намного проще настраивать vyatta в командной строке xorpsh. Поэтому для удобства работы запускаем 2 telnet-сессии. В одной должна быть командная строка xorpsh, а в другой - просто командная строка Debian под пользователем root. 12. Для того, чтобы по dhcp интерфейс WAN получал настройки провайдера, вводим команду (это надо делать в shell Debian, не в программе xorpsh): Запустится текстовый редактор vi. Перед строкой exit 0 добавляем строку dhclient eth1. 12. Маршрут по умолчанию. Если он уже есть на следующий шлюз (например, получен по dhcp), то прописывать маршрут не надо. Для проверки наличия маршрута по умолчанию нужно в консоли Debian ввести команду route (именно в операционной системе, а не внутри xorpsh): 13. Настраиваем NAT для сети 192.168.7.0/24 (в командной строке xorpsh): 14. Проверяем работу NAT на компьютере 192.168.7.1, для этого на локальный ресурс корбины, например на ftp.corbina.ru (195.14.50.21) прописываем статический маршрут (компьютер 192.168.7.1 - простая машина под Windows XP): 1. В vyatta не встроено получение параметров интерфейса по dhcp, IP-адрес можно назначить только статически. Правда, если воспользоваться настройкой интерфейса vyatta с помощью dhclient, эту проблему можно обойти. |