Назад | Перейти на главную страницу

Соединение двух сетей вместе с OpenVPN

У меня две коробки Debian, расположенные в двух разных сетях. Я пытаюсь установить соединение OpenVPN через Интернет между ними, и у меня возникла небольшая проблема. Я хотел бы настроить это так, чтобы все мои домашние IP-адреса были доступны с работы, и наоборот. Никакой интернет-трафик не должен проходить через это соединение VPN, только трафик локальной сети.

Я успешно соединил две коробки как таковые

172.16.130.2 internal addy (10.9.8.1 vpn addy) - server vpn address (work)
172.16.120.2 internal addy (10.9.8.2 vpn addy) - client vpn address (home)

Я могу пинговать клиентскую и серверную VPN с терминала на обоих устройствах, никаких проблем с этим - VPN работает хорошо. Так что я могу пинговать 10.9.8.1 со своего домашнего сервера.

Я установил статический маршрут на своем домашнем сервере для 172.16.130.0/24 со шлюзом 10.9.8.1 и наоборот на рабочем сервере, и теперь я могу проверить внутренний IP-адрес своего рабочего сервера 10.16.130.2. Это тоже работает.

Итак, теперь я пытаюсь пропинговать маршрутизатор моего рабочего сервера @ 172.16.130.1 или любой из клиентских IP-адресов в моей рабочей сети 172.16.130.x и без кубиков. Что будет следующим шагом, чтобы моя рабочая сеть стала видимой для моего домашнего сервера? Я думаю, что мне пока не нужно ничего делать на роутерах, но могу ошибаться.

Чтобы машины в разных сетях могли успешно взаимодействовать друг с другом, оба конца должны знать, как маршрутизировать трафик на другой конец. Обычно это легко сделать в простой локальной сети конечного пользователя, потому что обычно есть только два пункта назначения: «локальная сеть» и «везде». Трафик в локальную сеть просто отправляется прямо к месту назначения, в то время как трафик в другие места отправляется на шлюз по умолчанию («маршрутизатор»), и он обрабатывает его (передавая его вашему вышестоящему провайдеру, который имеет гораздо больше знаний о том, где отправлять трафик по многим направлениям, составляющим Интернет).

Добавляя VPN в микс, вы несколько усложняете ситуацию. Создавая машины конечных точек VPN в пределах LAN, вместо того, чтобы делать шлюзы по умолчанию конечными точками, вы значительно усложняете ситуацию.

Что вам нужно сделать, так это добавить маршруты, чтобы трафик мог идти в нужные места. Вы можете сделать это на каждом компьютере в обеих локальных сетях или просто добавить его в шлюз по умолчанию. Последний вариант намного проще, но немного менее эффективен (трафик будет иметь дополнительный «переход», проходящий через шлюз, что в большинстве случаев не должно быть серьезным неудобством).

Не зная, каковы ваши шлюзы на самом деле, я не могу сказать вам, как их настроить, но маршруты в основном должны быть:

  • На шлюзе для 172.16.130.0/24:
    • Маршрутизировать весь трафик, предназначенный для 172.16.120.0/24, через 172.16.130.2
  • На шлюзе для 172.16.120.0/24:
    • Маршрутизировать весь трафик, предназначенный для 172.16.130.0/24, через 172.16.120.2

Есть также всевозможные средства межсетевой защиты, которые вам, возможно, придется сделать, как на шлюзах, так и на конечных точках VPN, и вам, возможно, придется включить переадресацию IP на конечных точках, но все это довольно простая настройка сети.

И в следующий раз: просто поместите конечные точки VPN на шлюз по умолчанию. Это намного проще.

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

/ proc / sys / net / ipv4 / ip_forward должно быть "1", когда пересылка включена.