Üdv!
Működik egy két telephelyet összekötő rendszerünk, mindkét helyen ADSL van, egyik oldalon fix IP cimmel, a másikon dinamikussal. Mindkét oldalon egy Debian Linuxos gép engedi ki a netre a helyi hálózatot, a fix IP cimes telephelyen fut egy OpenVPN szerver, a dinamikus IP cimes telephelyen pedig egy OpenVPN kliens is a gépen. Tökéletesen működik a rendszer, egy hálózatnak látszik a két hálózat, de amikor a dinamikus IP cimes telephelyen a T-Com 24 óránként megbontja a vonalat, akkor az OpenVPN kapcsolat szétszakad és nem indul újra magától. A net az megy szépen mindkét helyen, de a két háló nem látja egymást. Csak akkor jön össze újra a kapcsolat, ha CTRL+ALT+DEL nyomásával a dinamikus IP cimes gépet újrainditom.
Legyen szives segitsen valaki, hogy milyen beállitásokat kellene megnézni, ami segithet a dolgon.
Az OpenVPN-t nem én telepitettem, csak felhasználói szintű Linux ismeretekkel rendelkezem.
Ha más megoldás nincs, akkor az is jó, ha valaki megmondaná, hogy hogyan kell az OpenVPN klienst úgy újrainditani, hogy a netkapcsolat a gépeken ne szakadjon meg.
előre is köszi a segitséget
bogumil
- 1527 megtekintés
Hozzászólások
Gondolom, hogy a fix és a dinamikus IP című gépek különböző típusú ADSL előfizetéssel bírnak. A T-com szándékosan erőlteti rá a kuncsaftokra a drágább fix IP címes megoldást. Szerintem a legegyszerűbb dolog hogy a dinamikus IP című gépet üresjárati időben (éjszaka) autómatikusan újra kell indítani.
ELaci
- A hozzászóláshoz be kell jelentkezni
Üdv!
Amikor éjszaka történik az IP cim váltás, akkor a kollégák reggel újrainditással kezdenek,
és akkor egész nap szépen üzemel a háló. Ezzel nincs is gond, csak akkor van a probléma, amikor napközben munka közben történik a váltás, mert ekkor az összes usernek ki kell lépni a munkájából és
csak ezután tudják a linuxos gépen újrainditani. Ez sok időt elvesz a munkájukból.
Ezért felelne meg az a megoldás is, hogy ha csak a VPN klienst inditanánk újra, a netet nem lőnénk ki a userek alól.
bogumil
- A hozzászóláshoz be kell jelentkezni
A gépet nem kötelező, de a netet is újra kell indítani mert az IP cím megváltozott.
Már az előbb is írtam hogy: A T-com szándékosan erőlteti rá a kuncsaftokra a drágább fix IP címes megoldást.
ELaci
- A hozzászóláshoz be kell jelentkezni
jaj ne bénázzatok már!
a netet se kell újraindítani, ha pppd configjában megadjátok a "persistent" opciót, és akkor vissza fog csatlakozni magától. Érdemes még a "maxfail 0"-t is megadni, mert ekkor hosszabb dsl kimaradáskor se fogja feladni a próbálkozást.
fixip-s openvpn szerverre ezeket az opciókat érdemes megadni:
ping 15
ping-restart 60
ping-timer-rem
persist-tun
persist-key
dynip-sen ezt:
ping 15
persist-tun
ping-restart 60
persist-key
- A hozzászóláshoz be kell jelentkezni
napközbeni dsl rekonnektre meg javaslom egy cron entryt írni, hogy mondjuk minden hajnali kettőkor csatlakozzon újra a netre a gép, és akkor nem nap közben fogja érni a meglepetés a népet.
hozzáteszem még, hogy az openvpnen keresztül létesített tcp sessionok az újracsatlakozás során sem szakadnak meg, még akkor sem ha a dynip-es gép címe megváltozik.
openvpn királyság :D
# ps ax | grep -c openvpn
27
- A hozzászóláshoz be kell jelentkezni
log, log, log!
grep ovpn /var/log/syslog es valaszd ki az idopontot amikor problema van. Kuldd el a konfigodat is!
asd
- A hozzászóláshoz be kell jelentkezni
Workaroundként egy script, ami IP-cím váltáskor egyszerűen újra indítja az OpenVPN-t is. Van egy szkriptem, ami az időnkénti megmagyarázhatatlan "adsl csuklásokat" hivatott kivédeni. A /etc/ppp/ip-down.d/ könyvárba érdemes másolni 'adsl_check' néven. Beszúrtam egy sort, ami a újraindítja az OpenVPN-t is. Próbáld ki, hátha segít. Üdv, Péter
---------------------------
#!/bin/bash
# ADSL kapcsolatot helyreallito GNU/GPL szkript 2.1
# Abraham Peter
# 1.0 2003 szeptember 17.
# 2.0 2006 januar 11. ujrairva
# 2.1 2006 februar 14. ujrairva, tobbszori probalkozas
RUNLEVEL=$(/sbin/runlevel|cut -d\ -f2)
pidfile="/var/run/adsl_check.pid"
logfile="/var/log/adsl_check.log"
iface="ppp0"
korlat=29
szam=0
if [ ! $RUNLEVEL -eq 2 ] || [ -e $pidfile ]; then
exit 0
fi
echo $$ > $pidfile
function kapcs_javit {
/etc/init.d/networking stop
sleep 10
for i in $(/bin/pidof pppd); do
kill -TERM $i;
done
/etc/init.d/networking start
echo $(date)" "$szam >> $logfile
}
function ip_check {
aind=0
if [ ! -z $1 ]; then
if [ $(echo $1|awk -F. '{print NF}') -eq 4 ]; then
for tag in $(echo $1|awk -F. '{print $1,
$2, $3, $4}'); do
if [ $(echo $tag|grep -c -s [[:digit:]]) -eq 1 ] && [ $tag -ge 0 ] && [ $tag -le 255 ]; then
aind=$(($aind+1))
else
break
fi
done
fi
fi
if [ $aind -eq 4 ]; then
ivissza=1
else
ivissza=0
fi
return $ivissza
}
function ppp_check {
vissza=$(ifconfig| grep -c -s $iface)
if [ $vissza -eq 1 ]; then
ip_check $(ifconfig $iface|grep "inet addr:"|cut -d: -f2|cut -d\ -f1|sed -s 's/\ //')
vissza=$?
fi
return $vissza
}
while [ $szam -le $korlat ]; do
szam=$(($szam+1))
kapcs_javit
sleep 30
ppp_check
ered=$?
if [ $ered -eq 1 ]; then
# Ez itt az OpenVPN helye :-)
/etc/init.d/openvpn restart
break
fi
done
rm -fr $pidfile
- A hozzászóláshoz be kell jelentkezni
ne indítsátok már újra az openvpn-t! :D
az olyan gány. ennél azért robosztusabb az openvpn!
- A hozzászóláshoz be kell jelentkezni
Hoppá ez így tényleg gány! Az identálás teljesen eltűnt. :-( Lehet a kollégának tényleg igaz van, és az OpenVPN képes valahogy az ilyen IP cím váltást is túlélni. http://openvpn.net/ -en biztos lesz valami megoldás. :-)
- A hozzászóláshoz be kell jelentkezni
kódhoz használd a bbcode
[code]
tagjét.
- A hozzászóláshoz be kell jelentkezni
Sziasztok!
Köszi a sok gyors választ, de annyit tennék még hozzá,
hogy az internetkapcsolat nem szakad meg egyik gépen sem, az tök folyamatos,
ahhoz nem kell ujrainditani semmit. csak a VPN kapcsolat szakad szét IP váltáskor.
A VPN először ment szépen több hétig, csak néhány hete van a szétszakadásos jelenség.
A hálózatban annyi változás történt csak azóta, hogy nem 3, hanem 5 gép megy róla, nagyobb
lehet talán az adatforgalom. ennyi.
- A hozzászóláshoz be kell jelentkezni
na most van itt az ideje, hogy beidezd a konfigokat :D
- A hozzászóláshoz be kell jelentkezni
Üdv!
Mondtam hogy csak felhasználói szintű linux ismeretekkel rendelkezem,
ezt figyelembe véve légyszi ird le hogy
pontosan melyik konfigokat küldjem el?
mi a fájlok pontos utvonala?
- A hozzászóláshoz be kell jelentkezni
Debianban nem tudom hol tárolódik, de leginkább a /etc/openvpn alatt érdemes kutakodni, .conf vagy .ovpn (bár ez inkább windózra igaz) kiterjetsztéseket keresve.
- A hozzászóláshoz be kell jelentkezni
##############################################
# Sample client-side OpenVPN 2.0 config file #
# for connecting to multi-client server. #
# #
# This configuration can be used by multiple #
# clients, however each client should have #
# its own cert and key files. #
# #
# On Windows, you might want to rename this #
# file so it has a .ovpn extension #
##############################################
# Specify that we are a client and that we
# will be pulling certain config file directives
# from the server.
client
# Use the same setting as you are using on
# the server.
# On most systems, the VPN will not function
# unless you partially or fully disable
# the firewall for the TUN/TAP interface.
dev tap0
;dev tun
# Windows needs the TAP-Win32 adapter name
# from the Network Connections panel
# if you have more than one. On XP SP2,
# you may need to disable the firewall
# for the TAP adapter.
;dev-node MyTap
# Are we connecting to a TCP or
# UDP server? Use the same setting as
# on the server.
;proto tcp
proto udp
# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
remote 81.183.216.227 1194
;remote my-server-2 1194
# Choose a random host from the remote
# list for load-balancing. Otherwise
# try hosts in the order specified.
;remote-random
# Keep trying indefinitely to resolve the
# host name of the OpenVPN server. Very useful
# on machines which are not permanently connected
# to the internet such as laptops.
resolv-retry infinite
# Most clients don't need to bind to
# a specific local port number.
nobind
# Downgrade privileges after initialization (non-Windows only)
user nobody
group nogroup
# Try to preserve some state across restarts.
persist-key
persist-tun
# If you are connecting through an
# HTTP proxy to reach the actual OpenVPN
# server, put the proxy server/IP and
# port number here. See the man page
# if your proxy server requires
# authentication.
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]
# Wireless networks often produce a lot
# of duplicate packets. Set this flag
# to silence duplicate packet warnings.
;mute-replay-warnings
# SSL/TLS parms.
# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
ca ca.crt
cert VPNkliens1.crt
key VPNkliens1.key
# Verify server certificate by checking
# that the certicate has the nsCertType
# field set to "server". This is an
# important precaution to protect against
# a potential attack discussed here:
# http://openvpn.net/howto.html#mitm
#
# To use this feature, you will need to generate
# your server certificates with the nsCertType
# field set to "server". The build-key-server
# script in the easy-rsa folder will do this.
ns-cert-type server
# If a tls-auth key is used on the server
# then every client must also have the key.
;tls-auth ta.key 1
# Select a cryptographic cipher.
# If the cipher option is used on the server
# then you must also specify it here.
;cipher x
# Enable compression on the VPN link.
# Don't enable this unless it is also
# enabled in the server config file.
comp-lzo
# Set log file verbosity.
verb 3
# Silence repeating messages
;mute 20
- A hozzászóláshoz be kell jelentkezni
man openvpn
/etc/init.d/openvpn reload
?
- A hozzászóláshoz be kell jelentkezni
ha már mant emlegeted, akkor olvasd el Te is:
SIGUSR1
[...]
This signal, when combined with --persist-remote-ip, may be sent
when the underlying parameters of the host's network interface
change such as when the host is a DHCP client and is assigned a
new IP address. See --ipchange above for more information.
- A hozzászóláshoz be kell jelentkezni