Операционный режим (Operation Mode)
Операционный режим в VyOS предоставляет команды для мониторинга состояния системы, диагностики проблем и выполнения операционных задач без изменения конфигурации. Это основной режим работы для повседневного администрирования VyOS.
Основные концепции
Операционный vs Конфигурационный режим
Операционный режим (Operation Mode):
- Режим по умолчанию при входе в систему
- Только чтение и мониторинг
- Выполнение операционных команд (show, monitor, reset, clear)
- Не изменяет конфигурацию
- Приглашение:
vyos@router:~$
Конфигурационный режим (Configuration Mode):
- Для изменения конфигурации
- Команды set, delete, commit, rollback
- Транзакционный подход
- Приглашение:
vyos@router# - Вход: команда
configure
Категории команд
- show - Просмотр информации (состояние, статистика, конфигурация)
- monitor - Мониторинг в реальном времени
- reset - Сброс состояния (не конфигурации)
- clear - Очистка счетчиков и кэшей
- ping/traceroute - Сетевая диагностика
- generate/add/delete - Системные операции
Show Commands
System Information
# Общая информация о системе
show version
# Вывод:
# Version: VyOS 1.5.x
# Release train: current
# Built by: autobuild@vyos.net
# Built on: Mon 14 Oct 2024 12:00 UTC
# Build UUID: ...
# Architecture: x86_64
# Аппаратная информация
show system hardware
# Использование ресурсов
show system memory
show system cpu
show system storage
# Uptime и load average
show system uptime
# Процессы
show system processes
show system processes summary
show system processes extensiveNetwork Interfaces
# Все интерфейсы
show interfaces
# Конкретный интерфейс
show interfaces ethernet eth0
show interfaces bridge br0
show interfaces bond bond0
# Краткий формат
show interfaces brief
# Статистика интерфейса
show interfaces ethernet eth0 statistics
show interfaces ethernet eth0 counters
# Физическое состояние
show interfaces ethernet eth0 physical
# Очереди интерфейса
show interfaces ethernet eth0 queueIP Configuration and Routing
# IP адреса
show interfaces addresses
# ARP таблица
show arp
show arp interface eth0
# Таблица маршрутизации
show ip route
show ip route summary
show ip route 192.168.1.0/24
# Конкретный маршрут
show ip route 8.8.8.8
# IPv6 маршруты
show ipv6 route
show ipv6 route summary
# Neighbor таблица (IPv6)
show ipv6 neighborsRouting Protocols
# OSPF
show ip ospf neighbor
show ip ospf database
show ip ospf interface
show ip ospf route
# BGP
show ip bgp summary
show ip bgp neighbors
show ip bgp
show ip bgp neighbor 10.0.0.1 advertised-routes
show ip bgp neighbor 10.0.0.1 received-routes
# Route maps и prefix lists
show route-map
show ip prefix-list
show ip community-listVPN
# IPsec
show vpn ipsec sa
show vpn ipsec state
show vpn ipsec status
# WireGuard
show interfaces wireguard
show interfaces wireguard wg01
# OpenVPN
show openvpn server
show openvpn client
show openvpn status server server1Firewall and NAT
# Firewall правила
show firewall
show firewall name WAN_IN
show firewall statistics
# NAT
show nat source statistics
show nat destination statistics
show nat source rules
show nat destination rules
# Connection tracking
show conntrack table ipv4
show conntrack table ipv6
show conntrack statisticsServices
# DHCP server
show service dhcp-server leases
show service dhcp-server statistics
show service dhcp-server leases pool LAN
# DHCPv6 server
show service dhcpv6-server leases
# DNS forwarding
show dns forwarding statistics
show dns forwarding nameservers
# NTP
show ntp
show system ntp
# SNMP
show snmp community
show snmp v3System Services
# SSH
show service ssh
# Пользователи
show users
show users recent
# Логи
show log
show log tail
show log tail 50
show log | match error
show log | match eth0
# Сервисы
show system servicesConfiguration
# Текущая конфигурация
show configuration
# Конкретная секция
show configuration interfaces
show configuration service dhcp-server
# Команды для воспроизведения
show configuration commands
show configuration commands | match interface
# Сохраненная конфигурация
show configuration file /config/config.boot
# История commit
show system commit
show system commit diff 5Monitor Commands
Real-Time Monitoring
# Логи в реальном времени
monitor log
monitor log colored
# Трафик интерфейса
monitor interfaces
monitor interfaces eth0
monitor interfaces eth0 traffic
# Firewall
monitor firewall
monitor firewall name WAN_IN
# BGP соседи
monitor protocol bgp
# Bandwidth usage
monitor bandwidth interface eth0Traffic Capture
# Захват трафика (tcpdump)
monitor traffic interface eth0
monitor traffic interface eth0 filter "port 80"
monitor traffic interface eth0 save /tmp/capture.pcap
# С дополнительными фильтрами
monitor traffic interface eth0 filter "host 192.168.1.100 and port 443"
# Verbose output
monitor traffic interface eth0 verboseReset Commands
Connection and Session Reset
# Сброс BGP соседа
reset ip bgp 10.0.0.1
# Сброс OSPF процесса
reset ip ospf process
# Сброс IPsec SA
reset vpn ipsec-peer 203.0.113.1
# Сброс conntrack соединений
reset conntrack-sync external
reset conntrack-sync internalTerminal Reset
# Сброс терминала
reset terminalClear Commands
Clearing Counters and Cache
# Очистка счетчиков интерфейса
clear interfaces ethernet eth0 counters
# Очистка firewall counters
clear firewall name WAN_IN counters
clear firewall statistics
# Очистка ARP кэша
clear arp
# Очистка route кэша
clear ip route cache
# Очистка DNS кэша
clear dns forwarding cache
# Очистка conntrack таблицы
clear conntrack table ipv4
clear conntrack table ipv6Clearing System State
# Очистка системных логов
clear system login history user vyos
# Очистка DHCP leases
clear service dhcp-server lease 192.168.1.100Network Diagnostic Commands
Connectivity Testing
# Ping
ping 8.8.8.8
ping 8.8.8.8 count 5
ping 8.8.8.8 size 1400
ping 8.8.8.8 source-address 192.168.1.1
# Ping IPv6
ping 2001:4860:4860::8888
ping6 2001:4860:4860::8888
# Traceroute
traceroute 8.8.8.8
traceroute 8.8.8.8 source-address 192.168.1.1
# Traceroute IPv6
traceroute6 2001:4860:4860::8888
# MTU path discovery
ping 8.8.8.8 do-not-fragment size 1500DNS and Network Tools
# DNS lookup
nslookup google.com
nslookup google.com 8.8.8.8
# Dig
dig google.com
dig google.com @8.8.8.8 +short
dig google.com MX
# Host
host google.com
host 8.8.8.8
# Telnet
telnet 192.168.1.1 22
telnet smtp.gmail.com 25Network Scanning
# Port scan (если установлен nmap)
scan port 192.168.1.1
scan port 192.168.1.0/24 port 22
# ARP scan
scan arp interface eth1System Operation Commands
Power Management
# Перезагрузка
reboot
reboot now
reboot in 10
# Выключение
poweroff
poweroff now
poweroff in 30
# Отмена запланированной перезагрузки
shutdown -cImage Management
# Список образов
show system image
# Установка нового образа
add system image https://downloads.vyos.io/...
# Удаление образа
delete system image 1.4.0
# Установка образа по умолчанию
set system image default-boot 1.5.0Configuration Management
# Копирование конфигурации
copy file /config/config.boot to /config/config.boot.backup
copy running-config file /tmp/running.conf
# Загрузка конфигурации
load /config/config.boot.backup
# Сохранение конфигурации
save
save /config/config.boot.backupPKI Operations
# Генерация ключей
generate pki key-pair
generate pki key-pair install my-key
# Генерация сертификата
generate pki certificate sign my-ca install my-cert
# Генерация CSR
generate pki certificate-request install my-csr
# Просмотр сертификатов
show pki ca
show pki certificateSSH Keys
# Генерация SSH ключей
generate ssh-key user vyos
# Показать SSH ключи
show ssh fingerprints
show ssh server-keyAdvanced Operational Commands
System Debugging
# Включить debug для протокола
debug ospf events
debug bgp updates
# Посмотреть debug output
show log | match debug
# Отключить debug
no debug ospf events
no debug allHardware Information
# PCI устройства
show hardware pci
# CPU информация
show hardware cpu
# Memory banks
show hardware mem
# Sensors (температура, вентиляторы)
show hardware sensorsContainer Operations
# Список контейнеров
show container
# Детали контейнера
show container name my-container
# Логи контейнера
show container log name my-container
# Статистика контейнера
show container name my-container statisticsПримеры практического использования
1. Диагностика проблем с подключением
# Шаг 1: Проверить интерфейсы
show interfaces brief
# Шаг 2: Проверить IP адреса
show interfaces addresses
# Шаг 3: Проверить маршрутизацию
show ip route 8.8.8.8
# Шаг 4: Проверить conntrack
show conntrack table ipv4 | match 8.8.8.8
# Шаг 5: Ping test
ping 8.8.8.8 source-address <your-ip>
# Шаг 6: Traceroute
traceroute 8.8.8.82. Проверка VPN статуса
# IPsec
show vpn ipsec sa
show vpn ipsec status
# Если туннель down - логи
show log | match ipsec
# Статистика интерфейса VTI
show interfaces vti vti0 statistics
# Routing через VPN
show ip route | match vti03. Мониторинг производительности
# CPU и память
show system uptime
show system cpu
show system memory
# Network throughput
show interfaces eth0 statistics
# Connection tracking usage
show conntrack statistics
# Топ процессов
show system processes extensive | head -204. Диагностика BGP
# Состояние BGP соседей
show ip bgp summary
# Детали соседа
show ip bgp neighbors 10.0.0.1
# Получаемые маршруты
show ip bgp neighbor 10.0.0.1 received-routes
# Анонсируемые маршруты
show ip bgp neighbor 10.0.0.1 advertised-routes
# BGP таблица
show ip bgp
# Путь к конкретной сети
show ip bgp 203.0.113.0/245. Анализ firewall
# Все правила firewall
show firewall
# Статистика конкретного ruleset
show firewall name WAN_IN statistics
# Connection tracking
show conntrack table ipv4 | wc -l
# Топ источников conntrack
show conntrack table ipv4 | awk '{print $5}' | cut -d= -f2 | sort | uniq -c | sort -rn | head -10
# Проверка конкретного соединения
show conntrack table ipv4 | match "192.168.1.100"6. DHCP troubleshooting
# Активные leases
show service dhcp-server leases
# Статистика DHCP
show service dhcp-server statistics
# Leases конкретного pool
show service dhcp-server leases pool LAN
# Логи DHCP
show log | match dhcpПолезные техники
Фильтрация вывода
# Grep (match)
show configuration | match interface
show log | match error
# Exclude
show configuration | no-more | grep -v "!"
# Head/Tail
show log tail 50
show log | head -20
# Pipe to less для длинного вывода
show configuration | no-moreФорматирование вывода
# JSON формат (для API)
show interfaces format json
show configuration format json
# Без пагинации
show log | no-more
# С timestamps
show log | match error | tailКопирование и сохранение вывода
# Сохранить в файл
show configuration > /tmp/config.txt
show running-config | cat > /tmp/running.txt
# SCP копирование
scp /tmp/config.txt user@server:/backup/Alias для частых команд
В конфигурационном режиме:
configure
set system login user vyos alias sh="show"
set system login user vyos alias si="show interfaces"
set system login user vyos alias sir="show ip route"
commit
saveТеперь в операционном режиме:
sh version # вместо show version
si brief # вместо show interfaces brief
sir summary # вместо show ip route summaryCommand Cheat Sheet
Топ-20 команд для ежедневной работы
show interfaces brief- Краткий статус интерфейсовshow ip route- Таблица маршрутизацииshow configuration- Текущая конфигурацияshow system uptime- Uptime системыshow log tail 50- Последние 50 строк логаping 8.8.8.8- Тест подключенияshow service dhcp-server leases- DHCP leasesshow vpn ipsec sa- IPsec туннелиshow ip bgp summary- BGP статусshow firewall- Firewall правилаshow conntrack table ipv4- Connection trackingmonitor log- Логи в реальном времениshow system memory- Использование памятиshow system cpu- Использование CPUshow interfaces statistics- Статистика интерфейсовshow nat source statistics- NAT статистикаshow version- Версия системыshow users- Залогиненные пользователиshow system commit- История commit’овsave- Сохранить конфигурацию
Best Practices
Регулярный мониторинг
- Проверять
show system uptimeежедневно - Мониторить
show system memoryи CPU - Отслеживать
show conntrack statistics - Проверять
show log | match error
- Проверять
Документирование
- Сохранять вывод важных команд
- Делать screenshots при проблемах
- Вести log book операций
- Документировать изменения
Troubleshooting workflow
- Начинать с
show interfaces brief - Проверять
show log tail 100 - Использовать
monitor logдля real-time - Собирать всю диагностику перед обращением в поддержку
- Начинать с
Performance monitoring
- Регулярно проверять
show system resources - Мониторить interface statistics
- Отслеживать conntrack usage
- Следить за routing table size
- Регулярно проверять
Безопасность
- Регулярно проверять
show users - Мониторить
show system login - Проверять firewall statistics
- Анализировать conntrack для аномалий
- Регулярно проверять
Automation
- Использовать скрипты для регулярных проверок
- Собирать метрики в системы мониторинга
- Автоматизировать рутинные задачи
- Создавать health check скрипты
Backup awareness
- Регулярно делать
save - Периодически
show configuration commands > backup.txt - Хранить backup вне устройства
- Тестировать restore процедуру
- Регулярно делать
Learning path
- Начать с базовых show commands
- Изучать вывод команд
- Экспериментировать с фильтрами
- Создавать собственные alias
Remote management
- Использовать SSH вместо telnet
- Настроить tmux/screen для длительных сессий
- Иметь out-of-band доступ
- Документировать recovery процедуры
Command history
- Использовать историю команд (стрелки вверх/вниз)
- Ctrl+R для поиска в истории
- Сохранять часто используемые команды
- Создавать команды-шаблоны
Заключение
Операционный режим VyOS предоставляет мощный набор команд для мониторинга, диагностики и управления системой. Освоение этих команд критично для эффективного администрирования VyOS и быстрого решения проблем в production окружениях.
Ключевые takeaways:
- Операционный режим - для мониторинга, не для изменений
- Show commands - основа диагностики
- Monitor commands - real-time visibility
- Reset/Clear - для операционных задач
- Практика использования - ключ к мастерству
Дополнительные ресурсы:
- VyOS Command Reference
- Configuration Guide - для изменения конфигурации
- Troubleshooting - методология решения проблем