Les réseaux de mon domicile et de mon lieu de travail sont identiques (sous-réseau 10.0.0.x).
Lorsque je configure une connexion VPN sur une machine Windows 7 (PPTP), je peux envoyer une requête ping à n'importe quel serveur situé sur mon lieu de travail sans aucune route statique.
D'autre part, lors de la configuration de la même connexion VPN sur mon ordinateur Ubuntu 14.04, je ne peux établir aucune connexion avec le réseau distant en utilisant un itinéraire statique créé pour un hôte spécifique sur l'autre réseau via le tunnel.
J'essayais de comprendre ce qui se passait sous Windows et j'ai trouvé ce qui suit:
Il existe une deuxième passerelle par défaut qui conduit tout le trafic vers le tunnel, voici la
route print
sortie:Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 10.0.0.138 10.0.0.9 4255 0.0.0.0 0.0.0.0 On-link 192.168.88.102 31 10.0.0.0 255.255.255.0 On-link 10.0.0.9 4511 10.0.0.9 255.255.255.255 On-link 10.0.0.9 4511 10.0.0.255 255.255.255.255 On-link 10.0.0.9 4511 127.0.0.0 255.0.0.0 On-link 127.0.0.1 4531 127.0.0.1 255.255.255.255 On-link 127.0.0.1 4531 127.255.255.255 255.255.255.255 On-link 127.0.0.1 4531 192.168.88.102 255.255.255.255 On-link 192.168.88.102 286 x.x.x.x 255.255.255.255 10.0.0.138 10.0.0.9 4256 224.0.0.0 240.0.0.0 On-link 127.0.0.1 4531 224.0.0.0 240.0.0.0 On-link 10.0.0.9 4514 224.0.0.0 240.0.0.0 On-link 192.168.88.102 31 255.255.255.255 255.255.255.255 On-link 127.0.0.1 4531 255.255.255.255 255.255.255.255 On-link 10.0.0.9 4511 255.255.255.255 255.255.255.255 On-link 192.168.88.102 286
192.168.88.102
est mon adresse IP sur le tunnel, 10.0.0.9
est mon adresse IP locale, 10.0.0.138
est mon routeur,
et x.x.x.x
est l'adresse IP publique du serveur VPN.
tracert
sortie:
pour la première fois:
tracert -d 10.0.0.83
Tracing route to 10.0.0.83 over a maximum of 30 hops
1 10.0.0.9 reports: Destination host unreachable.
Trace complete.
et pour la deuxième fois:
tracert -d 10.0.0.83
Tracing route to 10.0.0.83 over a maximum of 30 hops
1 42 ms 33 ms 53 ms 192.168.88.1
2 35 ms 31 ms 33 ms 10.0.0.83
Trace complete.
- pertinent
arp
sortie:
adresse distante:
arp -a | findstr 10.0.0.83
10.0.0.83 static
adresse locale:
arp -a | findstr 10.0.0.14
10.0.0.14 b8-27-eb-37-38-a4 dynamic
sur Ubuntu, la liste de routage par défaut est la suivante:
Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.0.0.138 0.0.0.0 UG 0 0 0 wlan0 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0 192.168.88.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 x.x.x.x 10.0.0.138 255.255.255.255 UGH 0 0 0 wlan0 x.x.x.x 10.0.0.138 255.255.255.255 UGH 0 0 0 wlan0
L'ajout d'une autre passerelle par défaut n'a pas fait l'affaire.
Quelle est l'explication de ce comportement et comment puis-je y arriver dans Ubuntu?
MODIFIER:
J'utilise le client VPN intégré d'Ubuntu (NetworkManager) qui s'exécute sous root
selon syslog
. Essayez également d’ajouter des itinéraires statiques dans le panneau de configuration des paramètres IPv4 du plug-in VPN, ce qui a semblé avoir réussi à les ajouter à la table de routage mais n’agissait pas comme Windows.
Voici le Ubuntu /var/log/syslog
à partir du moment où la connexion est établie:
May 29 16:49:56 hostname wpa_supplicant[823]: wlan0: CTRL-EVENT-SCAN-STARTED
May 29 16:49:57 hostname wpa_supplicant[823]: nl80211: send_and_recv->nl_recvmsgs failed: -33
May 29 16:50:15 hostname NetworkManager[757]: <info> Starting VPN service 'pptp'...
May 29 16:50:15 hostname NetworkManager[757]: <info> VPN service 'pptp' started (org.freedesktop.NetworkManager.pptp), PID 5123
May 29 16:50:15 hostname NetworkManager[757]: <info> VPN service 'pptp' appeared; activating connections
May 29 16:50:15 hostname NetworkManager[757]: <info> VPN plugin state changed: starting (3)
May 29 16:50:15 hostname pppd[5127]: Plugin /usr/lib/pppd/2.4.5/nm-pptp-pppd-plugin.so loaded.
May 29 16:50:15 hostname NetworkManager[757]: <info> VPN connection 'VPN1' (Connect) reply received.
May 29 16:50:15 hostname pppd[5127]: pppd 2.4.5 started by root, uid 0
May 29 16:50:15 hostname pppd[5127]: Using interface ppp0
May 29 16:50:15 hostname pppd[5127]: Connect: ppp0 <--> /dev/pts/7
May 29 16:50:15 hostname NetworkManager[757]: SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
May 29 16:50:15 hostname NetworkManager[757]: SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/ppp0, iface: ppp0): no ifupdown configuration found.
May 29 16:50:15 hostname NetworkManager[757]: <warn> /sys/devices/virtual/net/ppp0: couldn't determine device driver; ignoring...
May 29 16:50:15 hostname pptp[5132]: nm-pptp-service-5123 log[main:pptp.c:314]: The synchronous pptp option is NOT activated
May 29 16:50:15 hostname pptp[5147]: nm-pptp-service-5123 log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 1 'Start-Control-Connection-Request'
May 29 16:50:15 hostname pptp[5147]: nm-pptp-service-5123 log[ctrlp_disp:pptp_ctrl.c:739]: Received Start Control Connection Reply
May 29 16:50:15 hostname pptp[5147]: nm-pptp-service-5123 log[ctrlp_disp:pptp_ctrl.c:773]: Client connection established.
May 29 16:50:16 hostname pptp[5147]: nm-pptp-service-5123 log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 7 'Outgoing-Call-Request'
May 29 16:50:16 hostname pptp[5147]: nm-pptp-service-5123 log[ctrlp_disp:pptp_ctrl.c:858]: Received Outgoing Call Reply.
May 29 16:50:16 hostname pptp[5147]: nm-pptp-service-5123 log[ctrlp_disp:pptp_ctrl.c:897]: Outgoing call established (call ID 0, peer's call ID 61002).
May 29 16:50:16 hostname pppd[5127]: CHAP authentication succeeded
May 29 16:50:16 hostname pppd[5127]: MPPE 128-bit stateless compression enabled
May 29 16:50:18 hostname pppd[5127]: local IP address 192.168.88.102
May 29 16:50:18 hostname pppd[5127]: remote IP address 192.168.88.1
May 29 16:50:18 hostname pppd[5127]: primary DNS address 10.0.0.2
May 29 16:50:18 hostname NetworkManager[757]: <info> VPN connection 'VPN1' (IP4 Config Get) reply received from old-style plugin.
May 29 16:50:18 hostname NetworkManager[757]: <info> VPN Gateway: x.x.x.x
May 29 16:50:18 hostname NetworkManager[757]: <info> Tunnel Device: ppp0
May 29 16:50:18 hostname NetworkManager[757]: <info> IPv4 configuration:
May 29 16:50:18 hostname NetworkManager[757]: <info> Internal Address: 192.168.88.102
May 29 16:50:18 hostname NetworkManager[757]: <info> Internal Prefix: 32
May 29 16:50:18 hostname NetworkManager[757]: <info> Internal Point-to-Point Address: 192.168.88.1
May 29 16:50:18 hostname NetworkManager[757]: <info> Maximum Segment Size (MSS): 0
May 29 16:50:18 hostname NetworkManager[757]: <info> Forbid Default Route: yes
May 29 16:50:18 hostname NetworkManager[757]: <info> Internal DNS: 10.0.0.2
May 29 16:50:18 hostname NetworkManager[757]: <info> DNS Domain: '(none)'
May 29 16:50:18 hostname NetworkManager[757]: <info> No IPv6 configuration
May 29 16:50:19 hostname NetworkManager[757]: <info> VPN connection 'VPN1' (IP Config Get) complete.
May 29 16:50:19 hostname NetworkManager[757]: <info> Policy set 'AO' (wlan0) as default for IPv4 routing and DNS.
May 29 16:50:19 hostname NetworkManager[757]: <info> Writing DNS information to /sbin/resolvconf
May 29 16:50:19 hostname dnsmasq[1565]: setting upstream servers from DBus
May 29 16:50:19 hostname dnsmasq[1565]: using nameserver 10.0.0.2#53 for domain 88.168.192.in-addr.arpa
May 29 16:50:19 hostname dnsmasq[1565]: using nameserver 10.0.0.138#53
May 29 16:50:20 hostname NetworkManager[757]: <info> VPN plugin state changed: started (4)
May 29 16:50:20 hostname dbus[691]: [system] Activating service name='org.freedesktop.nm_dispatcher' (using servicehelper)
May 29 16:50:20 hostname dbus[691]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
/var/log/<files>
) pour voir s’il ya des erreurs signalées par pptp et ajouter le résultat approprié à votre question.use-routes
option deyes
.use-routes
option. Comme je l'ai mentionné dans la question, Windows crée deux routes par défaut. Lors du ping d'un serveur distant (qui a le même sous-réseau que le mien), il essaie d'abord de le trouver localement et, en cas d'échec, une demande au tunnel est envoyée (comme indiqué dans la table de routage par la deuxième passerelle par défaut). Ce n'est pas ce qui se passe dans Ubuntu.Réponses:
D'après ce que je peux dire de votre sortie, aucun hôte n'a de route à atteindre.
10.0.0.83
à travers le VPN. Les deux ont une table de routage indiquant10.0.0.83
est directement connecté via le réseau physique.La sortie Windows suggère que la première trace a échoué en raison d'un délai d'attente ARP. Aucun hôte du réseau directement connecté ne prétend avoir réellement
10.0.0.83
Par conséquent, vous voyez un message inaccessible de la machine Windows elle-même.Ensuite, quelque chose de bizarre se produit, car la prochaine tentative semble être un routage via le VPN. Ceci est légèrement similaire à ce que vous vous attendriez à voir dans le cas d'un message de redirection ICMP, mais pas exactement le même.
Une trace de paquet de la communication réelle pourrait être révélatrice. Est-ce que quelque chose sur le LAN envoie un paquet à la machine Windows, ce qui pourrait expliquer ce changement de comportement?
la source