Я пытаюсь установить соединение 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 .....
Мои конфиги прикреплены, любая помощь приветствуется!
/ etc / exports: ('*' здесь только для отладки)
/extroot *(rw,all_squash,insecure,async,no_subtree_check)
/etc/hosts.allow
portmap: ALL
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, завершится ошибкой.