Я пытаюсь настроить туннель «gre». Настройка выполняется следующим образом. На машине A у меня две сети: 10.0.0.x (eth2) и 152.83.x.x (eth1). Для машины A я подключил другие машины, которые делят 10.0.0.x. Машина A имеет статический адрес 10.0.0.10, другие три связанные с ней машины - 10.0.0.1-10.0.0.3.
Теперь у меня есть удаленный компьютер B, который находится в той же сети 152.83.xx ( eth1). Я пытаюсь использовать все IP-адреса 10.0.0.x (например, 10.0.0.1-10).
Я сделал следующее на машине A:
sudo ip tunnel add tunnel1 mode gre remote 152.83.70.180 local 152.83.70.114
sudo ip addr add 10.0.2.1 dev tunnel1
sudo ip link set tunnel1 up
sudo ip route add 10.0.0.0/24 dev tunnel1
sudo sysctl -w net.ipv4.conf.all.forwarding=1
На машине B, я ввел:
sudo ip tunnel add tunnel1 mode gre local 152.83.70.180 remote 152.83.70.114
sudo ip addr add 10.0.1.1 dev tunnel1
sudo ip link set tunnel1 up
sudo ip route add 10.0.0.0/24 dev tunnel1
sudo sysctl -w net.ipv4.conf.all.forwarding=1
Теперь, когда я пингу с B адреса 10.0.0.1 и т. Д., Я не получаю ответа. Более того, даже в сети A мой туннель1 как-то маскирует 10.0.0.1-10.0.0.3 от других machiens. Только 10.0.0.10, назначенный eth1, может быть отсканирован.
Кто-нибудь может сказать мне, что я делаю неправильно? BTW, когда я добавляю на обе машины следующий код
sudo ip route add 10.0.1.0/24 dev tunnel1
sudo ip route add 10.0.2.0/24 dev tunnel1
, тогда я могу ssh от одного к другому (например, от B до A по ssh 10.0.2.1), поэтому я уверен, что есть связь между два компьютера, например роутер не останавливает этот трафик.
Я чувствую, что мне нужен какой-то мост между eth1 и tunnel1 или что-то в этом роде
С уважением,
Пит
Я использую Ubuntu 16.04 (и / или 14.04).
Итак, у меня все работает. Оказывается, что MTU необходимо опустить на интерфейсы, например. до 1400, так что пакеты могут вставляться в фактические пакеты, выходящие с карты с MTU 1500. Другой способ состоит в том, чтобы выкопать в пакет расщепления / сборки, поскольку есть некоторые проблемы с GRE, делающими это для вас ... Или OpenVPN может, по-видимому, хорошо справляйтесь с этим, но я еще не исследовал.
Итак, у меня все работает. Оказывается, что MTU необходимо опустить на интерфейсы, например. до 1400, так что пакеты могут вставляться в фактические пакеты, выходящие с карты с MTU 1500. Другой способ состоит в том, чтобы выкопать в пакет расщепления / сборки, поскольку есть некоторые проблемы с GRE, делающими это для вас ... Или OpenVPN может, по-видимому, хорошо справляйтесь с этим, но я еще не исследовал.