Я использую SoftEther, но это может быть не важно.
У меня есть следующий адаптер:
vpn_myadapter: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 [redacted] prefixlen 64 scopeid 0x20<link>
ether [redacted] txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
и у меня есть следующие маршруты:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default dslrouter.netge 0.0.0.0 UG 600 0 0 wlp4s0
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 virbr0
192.168.123.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
192.168.254.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp4s0
Я должен знать, как я могу легко использовать Ubuntu для маршрутизации всего интернет-трафика через мой адаптер VPN.
Этот ответ предполагает, что Вы уже успешно соединили свою учетную запись и имеете рабочий адаптер.
Хорошо, после отсеивания через учебные руководства на таблицах/маршрутах IP я нашел решение, которое работает с SoftEther, который должен работать с другими адаптерами VPN к туннельному трафику через адаптер.
Запустите путем выполнения ip neigh
получить шлюз по умолчанию сети Вашей VPN и шлюз по умолчанию этой сети. Вам также будет нужен Ваш IP удаленного сервера. Если это не получает информацию для Вас, работает ifconfig
и tcpdump
на IP для Вашего адаптера VPN.
Можно легко объединить шаги рева в сценарий удара и/или инвертировать их для разъединения адаптера VPN:
Сначала необходимо будет получить информацию о DHCP от сервера с:
sudo dhclient vpn_myadapter
vpn_myadapter
название адаптера, которое может быть найдено с ifconfig
.
Второй необходимо создать маршрут от IP-адреса сервера VPN до локального интернет-шлюза, который выведет Вас к Интернету. 55.55.55.55 то, что я буду использовать в качестве адреса сервера в качестве примера. Также необходимо будет знать то, что названия адаптера для интернет-соединения и VNA (виртуальный сетевой адаптер), и можно найти их с ifconfig
. Можно также использовать IP ржание для получения краткого списка адаптеров и их шлюзов.
Команда для создания маршрута с IP VPN на локальный шлюз (в этом примере 192.168.0.1)
sudo ip route add 55.55.55.55/32 via 192.168.0.1 dev eth0
Удостоверьтесь, что eth0 установлен на адаптер, который соответствует Вашему локальному шлюзу
Затем Вы удалите свой маршрут по умолчанию, который направляет весь трафик по умолчанию.
sudo ip route del default
Теперь Вы добавите маршрут по умолчанию, который будет использовать шлюз VPN по умолчанию. Эта информация может быть собрана или от Вашего поставщика, сервер, из которого Вы устанавливаете или использование комбинации tcdump
, ip neigh
, и ifconfig
. Вы смогли находить информацию в этой точке, но необходимо было работать ip neigh
вначале, если Вы не можете найти информацию теперь. Я буду использовать шлюз по умолчанию по умолчанию, обеспеченный SoftEther, который является 192.168.30.1
.
sudo ip route add default via 192.168.30.1 dev vpn_myadapter
Это должно направить весь Ваш трафик через удаленную сеть. Если Вы будете все еще не мочь соединиться с Интернетом, то необходимо будет работать DhcpEnable
и SecureNatEnable
(Вы не были должны, но, возможно, должны были бы работать NatEnable
в зависимости от Вашей конфигурации) на Вашем сервере, если Вы не можете получить dhcp или Интернет, работающий после соединения клиента через эти шаги или Ваш dhclient
команда не работала. Я не уверен, если Вашему серверу будет нужна перезагрузка после обновления его.
Править: SecureNatEnable
включит NAT и DHCP.