OpenVPN — не удаётся подключиться к клиентам в новой подсети

OpenVPN — не удаётся подключиться к клиентам в новой подсети

Я запускаю сервер с большим количеством клиентов, подключенных к нему через OpenVPN, и число клиентов медленно росло, пока несколько дней назад не превысило 255. Когда я изначально настраивал VPN, я имел это в виду и установил маску подсети на '255.255.0.0'; тем не менее, что-то не так, поскольку я могу подключаться к старым клиентам с 10.8.0.xIP-адресами, но не к новым клиентам с 10.8.1.xIP-адресами.

Я что-то упустил в своих конфигурациях?

  • /etc/openvpn/server.conf:
    port 1194
    proto udp
    dev tun
    
    ca ca.crt
    crl-verify crl.pem
    cert server.crt
    key server.key
    dh dh.pem
    
    auth SHA512
    tls-auth ta.key 0
    cipher AES-256-CBC
    
    topology subnet
    server 10.8.0.0 255.255.0.0
    ifconfig-pool-persist ipp.txt
    
    push "bypass-dhcp"
    push "dhcp-option DNS 8.8.8.8"
    push "dhcp-option DNS 8.8.4.4"
    push "dhcp-option DNS 10.8.0.1"
    
    keepalive 10 120
    sndbuf 0
    rcvbuf 0
    persist-key
    persist-tun
    
    verb 3
    
    log /var/log/openvpn.log
    status openvpn-status.log
    
    # This automatically assigns domain names to clients, based on their names:
      # NOTE: You have to comment out user and grop lines above for this to even work
        #user nobody
        #group nogroup
    
        # default is 1 which doesn't allow user-defined scripts
        script-security 2
        learn-address /home/dvida/openvpn_scripts/learn_address.sh
    
  • /etc/openvpn/client-common.txt:
    client
    dev tun
    proto udp
    remote blah.blah.com 1194
    
    sndbuf 0
    rcvbuf 0
    mssfix 1160
    
    resolv-retry infinite
    persist-key
    persist-tun
    nobind
    
    remote-cert-tls server
    tls-version-min 1.0
    key-direction 1
    
    auth SHA512
    cipher AES-256-CBC
    
    verb 3
    
  • ifconfigсообщает, что этот интерфейс VPN не имеет конфликтов IP с другими интерфейсами:
    tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
              inet addr:10.8.0.1  P-t-P:10.8.0.1  Mask:255.255.0.0
              UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
              RX packets:71105670 errors:0 dropped:0 overruns:0 frame:0
              TX packets:70755978 errors:0 dropped:391 overruns:0 carrier:0
              collisions:0 txqueuelen:100
              RX bytes:42092973453 (39.2 GiB)  TX bytes:42070922921 (39.1 GiB)
    

решение1

Оказалось, что это не было связано с OpenVPN, а было связано с этим правилом SNAT:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 ! -d 10.8.0.0/24 -j SNAT --to 129.100.40.167
  • Я обновил текущее iptablesправило и исправил одно из них, так что вместо /etc/rc.localмаски сети теперь/16/24

Связанный контент