Я задал связанный вопрос здесь - не Может направить, отодвигают туннель ipsec от VPS - но я ответил, что и шли дальше немного.
Конечная цель того, чего я пытаюсь достигнуть, является этим:
У нас есть набор маршрутизаторов 4G, которые, как является стандартным для Великобритании, находятся позади нескольких слоев поставщика услуг, градуируют NAT и поэтому не публично адресуемы. У нас есть потребность смочь возразить к этим маршрутизаторам с сервера на AWS. Моя идея достигнуть этого состояла в том, чтобы настроить VPS, который действительно имел статический IP-адрес и устанавливал VPN от маршрутизатора 4G до VPS. Мы можем затем связаться с маршрутизатором 4G через общедоступный IP на VPS, который был бы установлен передать трафик, отодвигают туннель VPN.
Где я в:
Я настроил VPS на Цифровом Океане и настроил libreSwan IPSec VPN с помощью этого сценария - https://github.com/philplckthun/setup-simple-ipsec-l2tp-vpn - и установил VPN успешно от маршрутизатора до VPS. Я могу проверить с помощью ping-запросов с VPS на маршрутизатор и к другим устройствам, подключенным к маршрутизатору (который был моей начальной проблемой). Маршрутизатор установлен использовать туннель VPN в качестве маршрута по умолчанию и когда я проверяю с помощью ping-запросов VPS от маршрутизатора I, видят, что пакеты прибывают от локального адреса маршрутизатора (то же что касается устройств, подключенных к маршрутизатору), но теперь у меня есть проблема, где, если я проверяю с помощью ping-запросов интернет-адрес (например, 8.8.8.8) от маршрутизатора, я вижу, что пакеты поражают VPS, но они не становятся переданными Интернету (доказанный путем проверки с помощью ping-запросов другой машины в Интернете и наблюдения TCPdump). Я настроил передачу в/etc/sysctl.conf (net.ipv4.ip_forward = 1
) и включил ПОДМЕНУ в iptables (-A POSTROUTING -o eth0 -j MASQUERADE
). Я также попробовал несколько других правил iptables, которые я нашел вокруг сети, но ничто не помогло.
Сетевой график:
laptop (used for testing) --- 4G router --- Internet/VPN tunnel --- DO VPS
192.168.0.159 192.168.0.1 public IP
Если я проверяю с помощью ping-запросов 8.8.8.8 от ноутбука, это - то, что видит TCPdump на VPS:
14:24:58.713759 IP 192.168.0.159 > google-public-dns-a.google.com: ICMP echo request, id 1, seq 714, length 40
но ноутбук не получает ответ и как я сказал, я подтвердил, что пакеты не становятся дальнейшими.
Таблица маршрутизации VP:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default 178.62.64.1 0.0.0.0 UG 0 0 0 eth0
178.62.64.0 * 255.255.192.0 U 0 0 0 eth0
Что я делаю неправильно (кроме подъема и прибытия в работу)?
Спасибо.
Чтобы ответить на мой собственный вопрос; в ipsec.conf на сервере у нас было left = <подсеть сервера>
. Изменив это значение на left = 0.0.0.0 / 0
, пересылка работает должным образом.