最近偏好用 ocserv 來跑 VPN。在連上 full-route VPN 後測試發現速度偏慢,發現是沒有走 UDP 的 DTLS,只有 TCP 的 TLS 流量... 找了一下發現用有人遇過了,可以用 workaround 解:「OpenConnect not working with DTLS」。
作者發現是 ocserv.socket
有問題,打算整個抽開。方法是註解掉 /lib/systemd/system/ocserv.service
裡的 Requires=ocserv.socket
與 Also=ocserv.socket
,然後在 systemd 裡一起處理:
sudo systemctl stop ocserv sudo systemctl disable ocserv.service sudo systemctl disable ocserv.socket sudo systemctl daemon-reload sudo systemctl start ocserv sudo systemctl enable ocserv
重新連上去後跑 tcpdump 可以看到是 UDP 了,測速也可以看出來快不少...
我发现openconnect连接ocserv速度很快。
使用anyconnect速度慢,dtls很少,基本都是tls/tcp