OpenSUSE 13.1 openvpn

时间:2014-06-28 14:03:41

标签: dns routes dhcp opensuse openvpn

所以我需要为我的工作设置openvpn连接才能访问服务等。我曾经使用OpenSuse虚拟机来完成工作,但现在我设置了一个流浪汉环境(https://github.com/tcdev0/openSUSE-13.1-vagrant-ansible)它提供虚拟机(OpenSUSE 13.1)并通过openvpn连接工作,必须通过cli完成。

我注意到使用Networkmanager小程序进行openvpn和手动启动openvpn连接

有所不同
     openvpn client.conf 

     systemctl start openvpn@client.service

使用applet一切正常,我可以访问alles服务,比如通过ssh检查我们的gitlab服务器上的存储库,但手动启动openvpn连接我不能这样做。

我检查了连接到vpn时添加的路由

     /sbin/route

通过Networkmanager小程序连接

    default         10.128.10.13    0.0.0.0         UG    0      0        0 tun0
    10.0.0.0        10.128.10.13    255.0.0.0       UG    0      0        0 tun0
    10.128.10.1     10.128.10.13    255.255.255.255 UGH   0      0        0 tun0
    10.128.10.13    *               255.255.255.255 UH    0      0        0 tun0
    172.16.63.0     *               255.255.255.0   U     1      0        0 eno16777736
    server          172.16.63.2     255.255.255.255 UGH   0      0        0 eno16777736

手动连接

    default         10.128.10.13    128.0.0.0       UG    0      0        0 tun0
    default         172.16.63.2     0.0.0.0         UG    0      0        0 eno16777736
    10.0.0.0        10.128.10.13    255.0.0.0       UG    0      0        0 tun0
    10.128.10.1     10.128.10.13    255.255.255.255 UGH   0      0        0 tun0
    10.128.10.13    *               255.255.255.255 UH    0      0        0 tun0
    128.0.0.0       10.128.10.13    128.0.0.0       UG    0      0        0 tun0
    172.16.63.0     *               255.255.255.0   U     1      0        0 eno16777736
    server          172.16.63.2     255.255.255.255 UGH   0      0        0 eno16777736

我应该说我没有在applet中配置任何路由,所有路由都设置为auto。

所以路由彼此不同但是为什么,网络管理员做了什么或者我必须在client.conf中配置什么来获得相同的结果?

由于


更新

感谢您的回复。在VPN启动时我注意到的一件事:

    ifconfig ...

    eno167777 Link encap:Ethernet  Hardware Adresse 00:0C:29:91:B4:1E  
              inet Adresse: 172.16.63.131  Bcast:172.16.63.255  Maske:255.255.255.0

对于网络管理员连接:

如果我这样做

    nslookup gitlab

它显示了正确的地址

   Name:    gitlab
   Address: 10.32.1.1

但对于手动连接:

    nslookup gitlab

我得到了

    Server:     172.16.63.2
    Address:    172.16.63.2#53

    Non-authoritative answer:
    ...

他似乎在问错误的DNS服务器还是我错了?

1 个答案:

答案 0 :(得分:0)

显然

存在问题
    /etc/resolve.conf

通过openvpn连接手册不会更新此文件,而Networkmanager则会更新。

我不知道是否有更好的可能性来自动更新文件,但我想出了以下解决方案。

将这些行添加到(https://github.com/gronke/OpenVPN-linux-push

的client.conf中
    script-security 2
    up /etc/openvpn/up.sh
    down /etc/openvpn/down.sh

它有效;)