LINUX.ORG.RU
ФорумAdmin

Всё та же маршрутизация ОpеnVPN


0

1

Здравствуйте!

Есть оpеnvpn сервер, есть клиент на убунту.

В общем, вчера получилось подключится, теперь не получается :(

В логов видно ошибку: «MULTI: bad source address from client [IP клиента] , packet dropped».

Рекомендации на сайте: http://openvpn.net/index.php/open-source/faq/79-client/317-qmulti-bad-source-...

У меня в /etc/openvpn/ccd записано ifconfig-push 192.168.101.2 192.168.101.1

У интерфейса tun0 клиента при подключении: http://pastebin.com/uUZc0h2z

Подскажите что туда прописать, далек от сетевого администратирования.


Ответ на: комментарий от xtraeft

Траффик уже не идет мимо. Идет через сервер, но страницы не открываются.

Вчера заработало после того как вручную прописал: ip route replace default via IP_ppp0_iz_ifconfig dev ppp0

Теперь это не помогает. Скрипт прописал, который это автоматически делает в /etc/ppp/if-up.d

CentOS
() автор топика
Ответ на: комментарий от CentOS

Траффик уже не идет мимо. Идет через сервер, но страницы не открываются.

как определил что через сервер?
на сервере ip_forward включен?

xtraeft ★★☆☆
()
Ответ на: комментарий от xtraeft

Раньше страницы открывались, но под ip провайдера (не через vpn).

Сейчас после подключения страницы просто не открываются.

ip_forward включен, прописан в /etc/sysctl.conf

в /proc/sys/net/ipv4/ip_forward эдиничка прописана.

CentOS
() автор топика
Ответ на: комментарий от CentOS

блин, у тебя два шлюза по умолчанию. если ты хочешь пускать трафик через сервер, то тебе надо удалить маршрут по умолчанию на провайдера. можешь через скрипт, например.

script-security 2
up /patch/to/script.sh

в скрипте ip route del default via 91.239.104.9 dev ppp0

uspen ★★★★★
()
Ответ на: комментарий от CentOS

я не понял. запиши текущие маршруты и настройки. а так все проще чем ты думаешь.

uspen ★★★★★
()
Ответ на: комментарий от CentOS

ох, ты пропиши, что я тебе сказал, либо руками ПОСЛЕ поднятия впн, либо автоматом через скрипт. это писать надо в конфиг клиента. up - значит запускать скрипт после установления соединения.

uspen ★★★★★
()
Ответ на: комментарий от uspen

естественно днс у тебя должно быть тоже настроено.

uspen ★★★★★
()
Ответ на: комментарий от CentOS

я тут неосмотрителен. ip то динамический а шлюз то один (провайдера), но в принципе можно и так.

днс это /etc/resolv.conf

соответственно
если хочешь днс слать через провайдера, то в скрипте напиши

ip route add твойднс via 91.239.104.9 dev ppp0

если через впн, то у openvpn есть свой скрипт, посмотри его.

в общем случае, можешь юзать типа 8.8.8.8

uspen ★★★★★
()
Ответ на: комментарий от CentOS

разжевываю.

добавить в конфиг клиента

script-security 2
up /usr/local/bin/openvpn_up.sh
down /usr/local/bin/openvpn_down.sh

в скриптах напейсать

up
#!/bin/sh
ip route del default dev ppp0

down
#!/bin/sh
ip route add default dev ppp0

далее

chmod 700 /usr/local/bin/openvpn*

скрипты выполняются от рута.

uspen ★★★★★
()
Ответ на: комментарий от anonymous

Это где? В конфиге сервера имел ввиду конфиг openvpn на сервере.

CentOS
() автор топика
Ответ на: комментарий от CentOS

небось пробовал не с нуля, а с уже удаленным маршрутом по умолчанию? перегрузи клиента ОС и пробуй, раз так туго.

uspen ★★★★★
()
Ответ на: комментарий от CentOS

нет...

как я понял ты после того, как пробовал последний раз (http://pastebin.com/xz8dk9eU), у тебя пропал шлюз по умолчанию и ты не смог соединиться с впн, что логично. Поэтому переподключи интернет, убедись что он работает и пробуй

uspen ★★★★★
()
Ответ на: комментарий от CentOS

у тебя какой склад ума?

а маршрутизацию кто смотреть будет.

а не получилось, потому что ты отключил скрипты.

uspen ★★★★★
()
Ответ на: комментарий от CentOS

Thu Aug 30 18:00:16 2012 /sbin/route add -net 0.0.0.0 netmask 128.0.0.0 gw 192.168.101.5
Thu Aug 30 18:00:16 2012 /sbin/route add -net 128.0.0.0 netmask 128.0.0.0 gw 192.168.101.5

А это зачем?

dhameoelin ★★★★★
()
23 октября 2012 г.
Ответ на: комментарий от crimson

Сеть за клиентом

Сервер

mode server
port 1194
proto tcp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem
server 10.0.0.0 255.255.255.0
route 192.168.0.0 255.255.255.0 #сеть за клиентом
route 192.168.2.0 255.255.255.0 #сеть за клиентом
route 192.168.4.0 255.255.255.0 #сеть за клиентом
ifconfig-pool-persist ipp.txt
client-config-dir /etc/openvpn/ccd
client-to-client
keepalive 10 60
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
log /var/log/openvpn/server.log
verb 3

ccd/client

iroute 192.168.0.0 255.255.255.0
iroute 192.168.2.0 255.255.255.0
iroute 192.168.4.0 255.255.255.0
ifconfig-push 10.0.0.6 10.0.0.5

Клиент

client
dev tun
proto tcp
remote server 1194
nobind
persist-key
persist-tun
ca keys/ca.crt
cert keys/client.crt
key keys/client.key
comp-lzo
verb 1
log client.log
uspen ★★★★★
()
Ответ на: комментарий от uspen

а если надо сеть за сервером, то в сервере push:

push "route 192.168.0.0 255.255.255.0"
push "route 192.168.2.0 255.255.255.0"
push "route 192.168.4.0 255.255.255.0"
route 192.168.2.0 255.255.255.0 10.0.0.2
route 192.168.4.0 255.255.255.0 10.0.0.2
uspen ★★★★★
()
Ответ на: комментарий от uspen

Спасибо. Увы пока еще не зарабаотало.

phone (10.10.10.6) ----------------> сервер <----------------(10.10.10.22)tablet(192.168.1.107)
Все работает ок и клиенты (phone tablet) друг друга пингуют.
Но с phone y не могу попинговать 192.168.1.107, и любую другую машину из 192.168.1.0 сети.

Server.conf
----------------------------------------------------
mode server
port 1194
proto udp
dev tun
ca data/ca.crt
cert data/server.crt
key data/server.key
dh data/dh1024.pem
server 10.10.10.0 255.255.255.0
route 192.168.1.0 255.255.255.0 #сеть за клиентом ifconfig-pool-persist ipp.txt
client-config-dir /etc/openvpn/ccd
client-to-client

push «redirect-gateway def1 bypass-dhcp»
push «dhcp-option DNS 8.8.8.8»
push «dhcp-option DNS 8.8.4.4»

keepalive 10 60
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
log /var/log/server.log
verb 4
----------------------------------------------------

сat ccd/phone
----------------------------------------------------
ifconfig-push 10.10.10.6 10.10.10.5
iroute 192.168.1.0 255.255.255.0
----------------------------------------------------

cat ccd/tablet
----------------------------------------------------
iroute 192.168.1.0 255.255.255.0
ifconfig-push 10.10.10.22 10.10.10.21
----------------------------------------------------

route -n (tablet)
----------------------------------------------------
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.10.10.21 128.0.0.0 UG 0 0 0 tun0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
10.10.10.0 10.10.10.21 255.255.255.0 UG 0 0 0 tun0
10.10.10.21 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
78.46.151.106 192.168.1.1 255.255.255.255 UGH 0 0 0 eth0
128.0.0.0 10.10.10.21 128.0.0.0 UG 0 0 0 tun0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
----------------------------------------------------

sudo iptables -L -n (tablet)
----------------------------------------------------
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all  — 10.10.10.0/24 0.0.0.0/0
ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT all  — 10.10.10.0/24 0.0.0.0/0
ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
----------------------------------------------------

Копать в сторону конфига ccd/table ?

crimson
()
Ответ на: комментарий от crimson

Почему у тебя сети одинаковые у разных клиентов, хотя бы не одновременно подключаются?

uspen ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.