Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.
Суть проблемы - есть две машины в сети С. 1 машина с одним интерфейсом (eth0:5.5.5.5), просто висит в инете. 2 машина имеет два интерфейса, одним (vmbr0) смотрит в инет (IP:20.20.20.20), вторым (vmbr2) в локалку (192.168.0.0/24).
Нужно из локалки второй машины (192.168.0.0/24) пускать все пакеты через GRE-туннель между первой и второй машиной в интернет, чтобы 1 машина выступала в качестве шлюза.
Собственно туннель:
1 машина:
Код:
ip tunnel add tunnel0 mode gre local 5.5.5.5 remote 20.20.20.20 ttl 255 key 0xffafdfdf
ip link set tunnel0 up
ip addr add 10.0.0.1/24 peer 10.0.0.2/24 dev tunnel0
ip route add 192.168.0.0/24 via 10.0.0.2 dev tunnel0
2 машина:
Код:
ip tunnel add tunnel0 mode gre local 20.20.20.20 remote 5.5.5.5 ttl 255 key 0xffafdfdf
ip link set tunnel0 up
ip addr add 10.0.0.2/24 peer 10.0.0.1/24 dev tunnel0
Пытаюсь использовать TPROXY, но что-то подсказывает что можно без него:
Вам нужен туннель (GRE например) до удалённого сервера, который будет прописан как шлюз по умолчанию на Вашем шлюзе.
Да, это я. Считаю ту тему исчерпанной, здесь уже вопрос именно по GRE. Или нужно было все в той теме продолжать?
ip route add default via 10.0.0.1 dev tunnel0 на 2 машине
Ругается, что "RTNETLINK answers: File exists"
Вся проблема что я не хочу чтобы вообще все в той локалке шли через этот шлюз. Нуужно некоторым машинам в локалке идти через шлюз которым является машина 2.
да, уж сколько копий сломано не тему "основной шлюз в удаленной сети".
помнится были эпичные срачи на лоре, где "доказывалось", что основной шлюз может быть не в той сети, где находится хост)