网络管理器:是否可以将 CLI 选项传递给 openconnect(以便手动解析主机名)?

网络管理器:是否可以将 CLI 选项传递给 openconnect(以便手动解析主机名)?

基本上这个问题之前曾被问过,尽管使用了不同的标志/参数,但已经过去了几年。

由于管理我本地网络的人显然错误配置了 IPv6,我需要手动指定一个我希望 VPN 网关解析的 IPv4 地址。这可以使用 来完成 openconnect --resolve=HOST:IP gateway

是否可以让网络管理器使用该--resolve=HOST:IP参数?我尝试将值对添加到文件 VPN[vpn]部分,但它只是忽略了它(是的,我确实重新加载了文件)。.nmconnection

答案1

由于没有答案,您可能已经弄清楚了这一点,但是在编写 network-manager-openconnect 时,没有选项可以在运行 openconnect 时将 --resolve 选项添加到命令行参数列表中。

如果你喜欢冒险,你可以通过以下方式在源代码中破解它:

# Get the build dependencies
sudo apt-get build-dep network-manager-openconnect
# Download sources
mkdir ~/nmo ; cd ~/nmo
apt source network-manager-openconnect
cd network-manager-openconnect-1.2.6/
# Edit nm-openconnect-service.c in lines 451 - 519
# Compile:
./configure
make
# Install:
mv /usr/lib/NetworkManager/nm-openconnect-service /usr/lib/NetworkManager/nm-openconnect-service.bak
cp src/nm-openconnect-service /usr/lib/NetworkManager/nm-openconnect-service
# Restart networkmanager:
sudo service network-manager restart

为了快速破解,你的更改可能看起来像这样:

g_ptr_array_add (openconnect_argv, (gpointer) "--resolve=HOST:IP");

在第480行左右。

相关内容