我在使用 OpenVPN 时遇到了一个问题。服务器上的 openvpn 日志文件中有很多丢包记录:
2012 年 10 月 22 日星期一 10:14:41 us=726541 laptop/ххх:1194 MULTI:客户端 [192.168.1.107] 的源地址错误,数据包丢失
grep -E "^[a-z]" server.conf
-----
port 1194
proto udp
dev tun
ca data/ca.crt
cert data/server.crt
key data/server.key
dh data/dh1024.pem
tls-server
tls-auth data/ta.key 0
remote-cert-tls client
cipher AES-256-CBC
tun-mtu 1200
server 10.10.10.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
client-to-client
client-config-dir /etc/openvpn/ccd
route 10.10.10.0 255.255.255.0
keepalive 10 120
comp-lzo
persist-key
persist-tun
max-clients 5
status /var/log/status-openvpn.log
log /var/log/openvpn.log
verb 4
auth-user-pass-verify /etc/openvpn/verify.sh via-file
tmp-dir /tmp
script-security 2
-----
cat ccd/laptop
-----
iroute 10.10.10.0 255.255.255.0
-----
cat client.conf
-----
remote server ip 1194
client
dev tun
ping 10
comp-lzo
proto udp
tls-client
tls-auth data/ta.key 1
pkcs12 data/vpn.laptop.p12
remote-cert-tls server
#ns-cert-type server
persist-key
persist-tun
cipher AES-256-CBC
verb 3
pull
auth-user-pass /home/user/.openvpn/users.db
-----
根据“Jan Just Keijser - OpenVPN 2 Cookbook”,问题的根源在于配置选项不正确。看截图
但是,如您所见,我的配置有这样的选项。您能帮我解决这个问题吗?
@week 动词 levell=6;
client log.
Mon Oct 22 16:06:02 2012 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Mon Oct 22 16:06:02 2012 /sbin/ifconfig tun0 10.10.10.3 pointopoint 10.10.10.5 mtu 1500
Mon Oct 22 16:06:02 2012 /sbin/route add -net xxxx netmask 255.255.255.255 gw 192.168.1.1
Mon Oct 22 16:06:02 2012 /sbin/route add -net 0.0.0.0 netmask 128.0.0.0 gw 10.10.10.5
Mon Oct 22 16:06:02 2012 /sbin/route add -net 128.0.0.0 netmask 128.0.0.0 gw 10.10.10.5
Mon Oct 22 16:06:02 2012 Initialization Sequence Completed
cat ccd/latop
iroute 10.10.10.0 255.255.255.0 ifconfig-push 10.10.10.3 10.10.10.5
答案1
您正在指定client-config-dir
哪个将控制为连接的客户端添加的子网路由以及允许通过 tun 接口传输数据的子网。您的 CCD 文件指定了一个 iroute ,10.10.10.0/24
显然不包括192.168.1.107
,因此来自此源 IP 地址的数据包laptop
在接收时会被丢弃。
答案2
您确定该主机名 laptop 吗?请尝试将 DEFAULT 配置文件添加到 ccd 目录。我还将尝试检查对 ccd 中的目录和文件的访问权限。