Попытка исключить трафик на определенном интерфейсе из Mullvad VPN

У меня есть машина с Ubuntu с одним интерфейсом, подключенным к Интернету (через муллвад). Блок RPi подключен к другому интерфейсу Ethernet на моем компьютере с Ubuntu. Соединение работает, если муллвад выключен, поэтому теперь я пытаюсь исключить весь трафик из RPi в Интернет из муллвада.

Я пытался следовать этому руководству , но пока безуспешно. Интерфейс, к которому подключен RPi, имеет IP 10.0.0.1. RPi получает IP-адрес от Ubuntu в диапазоне 10.0.0.0/8. Вот что у меня есть:

      table inet excludeTraffic {
 chain allowIncoming {
    type filter hook input priority -100; policy accept;
    ip daddr 10.0.0.1 ct mark set 0x00000f41 meta mark set 0x6d6f6c65;
  }

  chain allowOutgoing {
    type route hook output priority -100; policy accept;
    ip saddr 10.0.0.1 ct mark set 0x00000f41 meta mark set 0x6d6f6c65;
  }
}

Может быть, кто-нибудь сможет указать мне правильное направление. Большое спасибо!

1 ответ

Вам нужно сделать это с помощью IPTables. Вот пример сценария.

      #!/bin/bash

# Define variables
RPi_IP="10.0.0.2"  # Replace with your RPi's IP
Primary_Interface="eth0"  # Replace with your primary internet-facing interface
VPN_Interface="tun0"  # Replace with your Mullvad VPN interface
Default_Gateway="YOUR_DEFAULT_GATEWAY"  # Replace with your default gateway

# Create an IP set for excluded IPs
ipset create exclude_ips hash:ip
ipset add exclude_ips "$RPi_IP"

# Mark outgoing packets from the IP set
iptables -t mangle -A OUTPUT -m set --match-set exclude_ips src -j MARK --set-mark 0x6d6f6c65

# Set up routing
ip rule add fwmark 0x6d6f6c65 table 100
ip route add default via "$Default_Gateway" table 100

# Configure SNAT to maintain connection
iptables -t nat -A POSTROUTING -o "$Primary_Interface" -j MASQUERADE

# Enable IP forwarding
echo "1" > /proc/sys/net/ipv4/ip_forward

# Flush existing rules (optional, use with caution)
# iptables -F
# ipset flush exclude_ips

echo "Excluded traffic from RPi to the internet from the Mullvad VPN."
Другие вопросы по тегам