Я не знаю через какое место это у них работает, Но без поднятия vpn пакеты в инет не уходят.
Но счас суть вопроса в том как передать пакеты из ppp1 в eth0.
А может я,что не понимаю? Как вообще должно быть в теории? Что если есть два подключения, и прописан route default то пакеты сами должны бегать?
Отправитель посылает пакет по своей таблице маршрутов, если маршрут прописан сквозь туннель, то в туннель.
пакет выходит из туннеля (ppp1) в Ubuntu, смотрит адрес назначения, если это не она сама, то смотрит включен ли форвард, если включен, смотрит есть ли маршрут для назначения пакета, если есть, смотрит разрешены ли такие пакеты и маршрут на файрволле, если разрешены отправляет по маршруту, на вылете этот пакет попадает в POSTROUTING цепочку таблицы nat, где ему насильно заменяется адрес отправителя (MASQUERADE), после чего он отправляется дальше.
Ответ возвращается в обратном порядке.
Обычно, когда ты подключаешься к провайдеру, ты оказываешься в его локалке, и шлюз твоей подсети ни в какие интернеты тебя не пускает, потому что тупо не знает про них, или они запрещены.
Чтобы получить выход в инет, устанавливается VPN подключение до шлюза, при этом ты попадаешь в VPN локалку внутри него, из которой уже есть выход в инет.
Пользователь решил продолжить мысль 12 Мая 2011, 20:21:46:
Да, tracepath, traceroute и tcpdump вам в руки.