StrongSwan ikev2 маршрутизация через VPN в Windows 10

Я пытаюсь создать VPN ikev2, используя StrongSwan на сервере Ubuntu.

Теперь в клиентах Windows 10 use default gateway on remote network опция отключена по умолчанию; поэтому, когда я подключаюсь к серверу, трафик полностью обходит VPN, если я не включаю эту опцию вручную.

Однако в Windows 10 Mobile такой опции нет.

На сайте StrongSwan есть параграф об этой проблеме и о том, как ее решить:

Microsoft изменила поведение Windows 10 Desktop и Mobile VPN для новых VPN-подключений. Параметр "Использовать шлюз по умолчанию в удаленной сети" в расширенных настройках TCP/IP VPN-подключения теперь отключен по умолчанию. Вы можете включить эту опцию на рабочем столе, но на мобильном устройстве это сделать невозможно. К счастью, Windows отправляет запрос DHCP при подключении и добавляет маршруты, указанные в опции 249 ответа DHCP.

(А затем пример файла конфигурации dnsmasq)

Но неясно, как мне настроить StrongSwan таким образом, и я не смог найти хороших ресурсов, объясняющих это.

Итак, вопрос в том, как я могу настроить StrongSwan таким образом, чтобы Windows 10 передавал весь интернет-трафик (ipv4) через VPN?

Вот мой ipsec.conf:

# ipsec.conf - strongSwan IPsec configuration file

config setup
    uniqueids=never
    charondebug="cfg 2, dmn 2, ike 2, net 2"

conn %default
    keyexchange=ikev2
    ike=aes128-sha256-ecp256,aes256-sha384-ecp384,aes128-sha256-modp2048,aes128-sha1-modp2048,aes256-sha384-modp4096,aes256-sha256-modp4096,aes256-sha1-modp4096,aes128-sha256-modp1536,aes128-sha1-modp1536,aes256-sha384-modp2048,aes256-sha256-modp2048,aes256-sha1-modp2048,aes128-sha256-modp1024,aes128-sha1-modp1024,aes256-sha384-modp1536,aes256-sha256-modp1536,aes256-sha1-modp1536,aes256-sha384-modp1024,aes256-sha256-modp1024,aes256-sha1-modp1024!
    esp=aes128gcm16-ecp256,aes256gcm16-ecp384,aes128-sha256-ecp256,aes256-sha384-ecp384,aes128-sha256-modp2048,aes128-sha1-modp2048,aes256-sha384-modp4096,aes256-sha256-modp4096,aes256-sha1-modp4096,aes128-sha256-modp1536,aes128-sha1-modp1536,aes256-sha384-modp2048,aes256-sha256-modp2048,aes256-sha1-modp2048,aes128-sha256-modp1024,aes128-sha1-modp1024,aes256-sha384-modp1536,aes256-sha256-modp1536,aes256-sha1-modp1536,aes256-sha384-modp1024,aes256-sha256-modp1024,aes256-sha1-modp1024,aes128gcm16,aes256gcm16,aes128-sha256,aes128-sha1,aes256-sha384,aes256-sha256,aes256-sha1!
    dpdaction=clear
    dpddelay=300s
    rekey=no
    left=%any
    leftsubnet=0.0.0.0/0
    leftcert=vpnHostCert.pem
    right=%any
    rightdns=8.8.8.8,8.8.4.4
    rightsourceip=172.16.16.0/24

conn IPSec-IKEv2
    keyexchange=ikev2
    auto=add

conn IPSec-IKEv2-EAP
    also="IPSec-IKEv2"
    rightauth=eap-mschapv2
    rightsendcert=never
    eap_identity=%any

conn CiscoIPSec
    keyexchange=ikev1
    # forceencaps=yes
    rightauth=pubkey
    rightauth2=xauth
    auto=add

0 ответов

Если вы установите dnsmasq и поместите это в /etc/dnsmasq.conf

dhcp-vendorclass=set:msipsec,MSFT 5.0
dhcp-range=tag:msipsec,172.16.16.0,static
dhcp-option=tag:msipsec,6
dhcp-option=tag:msipsec,249, 0.0.0.0/1,0.0.0.0, 128.0.0.0/1,0.0.0.0

он добавляет два статических маршрута для клиентов Windows. Маршруты 0.0.0.0/1 ведьма - это первая половина диапазона адресов ipv4 и 128.0.0.0/1 ведьма - вторая половина.

По какой-то причине вы не можете просто сделать 0.0.0.0/0но вы должны разделить его на два диапазона.
Я предполагаю, что окна игнорируют /0 потому что статические маршруты не предназначены для использования в качестве шлюза по умолчанию

Другие вопросы по тегам