Назад | Перейти на главную страницу

NFS не удается смонтировать через туннель openvpn

Я пытаюсь установить соединение nfs через туннель openvpn. Это действительно раздражает, и я не знаю, что попробовать дальше. Тест Connectein уже проводился на нескольких платформах. использовал debian / centos / openwrt. Изменен сервер <> клиент

"Прямое" соединение nfs всегда работает мгновенно, выполнив: (DEMO IP HERE)

mount -t nfs 192.168.2.1:/extroot test

но:

mount -t nfs 10.0.0.1:/extroot test

всегда терпит неудачу с: (занимает вечность до тайм-аута)

mount.nfs: Connection timed out

Также я сделал это на удаленном vps, и соединение установлено мгновенно. Туннель openvpn вроде в порядке. Пинг окей, iperf greather 100mbits soo .....

Мои конфиги прикреплены, любая помощь приветствуется!

NFS:

/ etc / exports: ('*' здесь только для отладки)

/extroot *(rw,all_squash,insecure,async,no_subtree_check)

/etc/hosts.allow

portmap: ALL

openvpn:

server.conf:

port 6565
proto udp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh2048.pem
server 10.0.0.0 255.255.255.0
ifconfig-pool-persist /etc/openvpn/ipp.txt
keepalive 5 30
verb 3

client.conf:

client
tls-client
dev tun
proto udp
remote hostname.of.server portnum
resolv-retry infinite
nobind
pkcs12 /etc/openvpn/nfs.p12
verb 3
remote-cert-tls server

tcpdump с сервера nfs при попытке подключения: http://pastebin.com/2PJ2w7vB

Я знаю, что это трудно читать, извините.

Ладно, я понял. @Zoredache указал мне правильное направление. Спасибо, мой друг :) !! Это действительно тот случай, когда mount.nfs пытается указать на localhost вместо ip vpn. Вы можете решить эту проблему, используя следующие mountopts.

/sbin/mount.nfs -v 10.0.0.1:/$remotepath /$localpath -o addr=10.0.0.1,clientaddr=10.0.0.6

Отладочный вывод mount.nfs

mount.nfs: timeout set for Sat Nov  1 08:49:42 2014
mount.nfs: trying text-based options 'clientaddr=10.0.0.6,vers=4,addr=10.0.0.1'

Если вы хотите решить эту проблему внутри initramfs, вам необходимо добавить /sbin/mount.nfs в ваш initramfs. В противном случае обычная команда, монтирующая nfs во время загрузки для nfsroot, завершится ошибкой.