ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Статьи (https://forum.antichat.xyz/forumdisplay.php?f=30)
-   -   Настройка Virtualbox и PPTP (https://forum.antichat.xyz/showthread.php?t=412085)

Unknown 11.05.2014 01:28

Решил настроить VirtualBox так что бы он ходил через мой впн, а хостовая машина на которой крутиться VBox ходила через домашний интернет. Впн должен быть включен на хостовой машине. И тип соединения в виртуалке "внутренний адаптер хоста".*

*

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

*

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

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

3. мне не подходит тип соединения NAT в конфигурации VBox, так как нет интерфейса вообще с которого бы ходила виртуалка, и к которому я мог бы подключиться ваершарком.

4. ну и если отвалился впн то виртуалка не должна иметь интернета, что бы не спалить свой реальный IP

*

Итак, в качестве хостовой машины Ubuntu, на виртуалке XP, тип соединения виртуальный адаптер хоста.

*

Хостовая машина, имеет следующие интерфейсы:

Код:

wlan0  - 192.168.1.10/24 домашний инет
ppp0 - 172.25.0.10/24 впн (интернет с забугорным IP), шлюз 172.25.0.1
vboxnet0 - 192.168.56.1/24 интерфейс VBox
*

вот между ними мне и нужно разрулить трафик что куда пойдет.

*

Гостевая машина. (виртуальный адаптер хоста)

пришлось задать параметры карточки вручную, так как DHCP Vbox не поддерживает установку шлюза.

Код:

192.168.56.10 ип
255.255.255.0 маска
192.168.56.1 - шлюз
8.8.8.8 - DNS гугла

Итак сейчас нужно прописать маршруты и сделать натирование, странно я ничего не смог нагуглить для подобной настройки

*

для начала ставим, так как придется писать маршруты по соурс адресу:

Код:

apt-get install iproute2
я сделаю свою таблицу маршрутизации для впн соединения. для этого добавляю в файл*

/etc/iproute2/rt_tables

Код:

100 vpn0
имя таблицы маршрутизации

*

и создаю такие правила:

Код:

#роутит адреса по соурс адресу сети VBox и отправляет в таблицу маршрутизации vpn0
ip rule add from 192.168.56.0/24 table vpn0
#маршурт по умолчанию для vpn0, направляю весь трафик с виртуалки в интерфейс с впн соединением
ip route add default dev ppp0 via 172.25.0.1 table vpn0
*

маршрутизацию настроил, но так как у нас соурс адрес*192.168.56.X, то на впн сервер он и будет приходить, но впн в душе не знает таких адресов. В результате посылки данных будут просто уходить на сервер, а ответные пакеты просто к нам не придут.

*

Для этого замутим натирование соурс адреса в адрес понятный впну

Код:

#натирует соурс адрес виртуалки в адрес 172.25.0.10
iptables -t nat -A POSTROUTING -s 192.168.56.0/24 -o ppp0 -j SNAT --to-source 172.25.0.10

и так вроде бы все настроил, пинги идут но, страницы открываются с адским торможением, погуглив выяснил что что у меня проблемы с mtu временем.

*

про это можно прочитать тут:

http://lartc.org/howto/lartc.cookbook.mtu-mss.html

*

для а мне нужно только:

Код:

iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 128
Ну собственно и все что я хотел рассказать в этой заметке.*

*

Что бы не вводить все это руками сделал два скрипта при запуске и выключении впна:

*

/etc/ppp/ip-up.d/vpn_up

Код:

#!/bin/sh

ip rule add from 192.168.56.0/24 table vpn0
ip route add default dev $PPP_IFACE via $PPP_REMOTE table vpn0
iptables -t nat -A POSTROUTING -s 192.168.56.0/24 -j SNAT --to-source $PPP_LOCAL

/etc/ppp/ip-up.d/vpn_down

Код:

#!/bin/sh

ip route del default dev $PPP_IFACE via $PPP_REMOTE table vpn0
ip rule del from 192.168.56.0/24 table vpn0
iptables -t nat -D POSTROUTING -s 192.168.56.0/24 -j SNAT --to-source $PPP_LOCAL



Время: 17:55