LINUX.ORG.RU
ФорумAdmin

Проброс траффика от клиента к клиенту

 ,


0

1

Настроен OpenVPN, к серверу подключаются два клиента. Хочу, чтобы при подключении клиента 10.9.1.4 весь траффик шел через 10.9.1.8. Т.е. чтобы клиент 10.9.1.8 служил «выходной нодой» для всего траффика клиента 10.9.1.4. Как возможно?

ccd 10.9.1.4:

push "redirect-gateway def1"
push "remote-gateway 10.9.1.1"
push "dhcp-option DNS 8.8.8.8"

iptables на сервере 10.9.1.1

# Generated by iptables-save v1.6.2 on Mon Apr 23 15:32:51 2018
*filter
:INPUT ACCEPT [610:58935]
:FORWARD ACCEPT [108:30547]
:OUTPUT ACCEPT [506:71048]
COMMIT
# Completed on Mon Apr 23 15:32:51 2018
# Generated by iptables-save v1.6.2 on Mon Apr 23 15:32:51 2018
*nat
:PREROUTING ACCEPT [22:1140]
:INPUT ACCEPT [20:1020]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.9.1.0/24 -o enp9s0 -j MASQUERADE
COMMIT
# Completed on Mon Apr 23 15:32:51 2018

★★★★★

Вам нужно настроить маршрутизацию на машине 10.9.1.1. И все пакеты от 10.9.1.4 заворачивать на 10.9.1.8. Другой вопрос, что машина 10.9.1.8 должна знать, что делать с этим трафиком. Если я правильно Вас понял, то у нее есть независимый от openVPN канал в сеть. В этом случае на ней также надо настроить маршрутизацию.

Обе задачи решаются через команды ip route и ip rule - Вам надо будет создать отдельные таблицы маршрутизации и распихать по ним трафик.

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

настроить маршрутизацию на машине 10.9.1.1. И все пакеты от 10.9.1.4 заворачивать на 10.9.1.8.

как это сделать?

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

Ну и поскольку адреса у Вас приватные, надо продумать, где именно Вы будете NAT поднимать.

Serge10 ★★★★★
()
Ответ на: комментарий от bvn13
ip route add 10.9.1.0 dev $OpenVPNdev src 10.9.1.4 table 8
ip route add default via 10.9.1.8 table 8
ip rule add from $vpn_address_on_vpn_dev table 8

Этими командами Вы загоняете весь трафик с 10.9.1.4, идущий через openVPN-канал на машину 10.9.1.1, в таблицу 8. И назначаете ей шлюз по умолчанию - машину 10.9.1.8. Ну а дальше уже задача 10.9.1.8 - ловить этот трафик и что-то с ним делать.

Serge10 ★★★★★
()
Последнее исправление: Serge10 (всего исправлений: 1)
Ответ на: комментарий от Serge10
# cat route.sh

#!/bin/bash
ip route add 10.9.1.0 dev tun0 src 10.9.1.6 table 8
ip route add default via 10.9.1.8 table 8
ip rule add from 10.9.1.1 table 8

# ./route.sh
RTNETLINK answers: Invalid argument
RTNETLINK answers: Network is unreachable

где я не прав?

bvn13 ★★★★★
() автор топика
Ответ на: комментарий от Pinkbyte
[bvn13@bvn13-linux ~]$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp9s0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 60:eb:69:29:0b:ac brd ff:ff:ff:ff:ff:ff
    inet 192.168.199.200/24 brd 192.168.199.255 scope global noprefixroute enp9s0
       valid_lft forever preferred_lft forever
    inet6 2a02:2168:19cd:a900:b498:3d41:27ef:8906/64 scope global dynamic noprefixroute
       valid_lft 1519sec preferred_lft 1519sec
    inet6 fe80::78e4:6fea:7ee7:de13/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
3: wlp7s0: <NO-CARRIER,BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 3a:72:39:66:95:16 brd ff:ff:ff:ff:ff:ff
4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100
    link/none
    inet 10.9.1.1 peer 10.9.1.2/32 scope global tun0
       valid_lft forever preferred_lft forever
    inet6 fe80::76d8:5f43:ae76:8d0/64 scope link stable-privacy
       valid_lft forever preferred_lft forever


[bvn13@bvn13-linux ~]$ ip route show
default via 192.168.199.1 dev enp9s0 proto static metric 100
10.9.1.0/24 via 10.9.1.2 dev tun0
10.9.1.2 dev tun0 proto kernel scope link src 10.9.1.1
192.168.199.0/24 dev enp9s0 proto kernel scope link src 192.168.199.200 metric 100


[bvn13@bvn13-linux ~]$ ip route show table 8


[bvn13@bvn13-linux ~]$ ip rule show
0:      from all lookup local
32765:  from 10.9.1.1 lookup 8
32766:  from all lookup main
32767:  from all lookup default
bvn13 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.