Skip to main content

Office Testbed

                                                                                                                                                                         

Исходные данные Стенда:

Ноутбук с Windows 11 Pro
Ноутбук с Linux Astra 1.8 Desktop
Коммутатор - TP-Link TL-SG108


Work-Desktop (Windows 11 Pro)

Настройка Статического IP без Gateway/DNS

Имя адаптера "Ethernet"

$if = "Ethernet"
Get-NetIPAddress -InterfaceAlias $if -AddressFamily IPv4 -ErrorAction SilentlyContinue | Remove-NetIPAddress -Confirm:$false
New-NetIPAddress -InterfaceAlias $if -IPAddress 192.168.10.2 -PrefixLength 24

Профиль «Частная сеть», чтобы брандмауэр не блокировал

Set-NetConnectionProfile -InterfaceAlias $if -NetworkCategory Private
Постоянный маршрут к подсети ВМ через Astra-хост

IP Astra Хоста - 192.168.10.3
Сеть Astra ВМ  - 192.168.122.0

route -p add 192.168.122 mask 255.255.255.0 192.168.10.3 metric 1

Разрешение входящего ping на Win11

New-NetFirewallRule -DisplayName "Allow ICMPv4-In" -Protocol ICMPv4 -IcmpType 8 -Direction Inbound -Action Allow -Profile Any

Проверка

route print -4 | findstr 192.168.122

ping 192.168.10.3
ping 192.168.122.1
ping 192.168.122.111

Host-Desktop (Linux Astra 1.8)

Настройка Статического IP без Gateway/DNS

Узнаем имя Wi-Fi адаптера

nmcli device status
nmcli con show

Имя адаптера "Gigant_Guests"

sudo nmcli con mod "Wired connection 1" \
  ipv4.method manual \
  ipv4.addresses 192.168.10.3/24 \
  ipv4.gateway "" \
  ipv4.dns "" \
  ipv4.never-default yes \
  ipv6.method disabled

Применяем изменения

sudo nmcli con up "Gigant_Guests"
ip -4 addr show eno1
Включение IPv4-форвардинга
echo 'net.ipv4.ip_forward=1' | sudo tee /etc/sysctl.d/99-forward.conf
sudo sysctl --system
sysctl net.ipv4.ip_forward
Hook для libvirt firewall
sudo mkdir -p /etc/libvirt/hooks
sudo tee /etc/libvirt/hooks/network > /dev/null << 'EOF'
#!/bin/bash
# $1 = имя сети, $2 = операция
if [ "$1" = "default" ] && [ "$2" = "started" ]; then
    # Win11 (LAN) -> ВМ
    iptables -C FORWARD -i eno1 -o virbr0 -s 192.168.10.0/24 -d 192.168.122.0/24 -j ACCEPT 2>/dev/null || \
        iptables -I FORWARD 1 -i eno1 -o virbr0 -s 192.168.10.0/24 -d 192.168.122.0/24 -j ACCEPT

    # ВМ -> Win11 (ответы и новые соединения)
    iptables -C FORWARD -i virbr0 -o eno1 -s 192.168.122.0/24 -d 192.168.10.0/24 -j ACCEPT 2>/dev/null || \
        iptables -I FORWARD 2 -i virbr0 -o eno1 -s 192.168.122.0/24 -d 192.168.10.0/24 -j ACCEPT
fi
EOF
sudo chmod +x /etc/libvirt/hooks/network

Применение изменений

sudo systemctl restart libvirtd
sudo virsh net-destroy default && sudo virsh net-start default
sudo virsh net-autostart default

# Проверка правил
sudo iptables -L FORWARD -n -v --line-numbers | head

VM-Server (Linux Astra 1.8 server)

Остановка и Отключения NetworkManager
sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager
sudo systemctl mask NetworkManager
sudo systemctl restart networking
systemctl status networking
Настройка Статического IP без Gateway/DNS
sudo tee /etc/network/interfaces > /dev/null << 'EOF'
auto lo
iface lo inet loopback

auto enp1s0
iface enp1s0 inet static
    address 192.168.122.111/24
    gateway 192.168.122.1
    dns-nameservers 192.168.122.1
EOF

Применение изменений

sudo systemctl restart networking