Совместно используйте мое соединение VPN с другими пользователями LAN

У меня есть ПК с одним физическим сетевым адаптером, соединяющимся с сервером VPN. Существует ли способ, которым я могу установить (виртуальный) интерфейс шлюза на том же самом сетевом адаптере способом, таким образом, другие устройства в моей сети могут использовать это в качестве шлюза и выполнить их трафик через это и соединение VPN?

Большинство моих ifconfig:

enp0s21f5 Link encap:Ethernet  HWaddr 4c:cc:6a:d5:94:96  
      inet addr:192.168.1.120  Bcast:192.168.1.255  Mask:255.255.255.0
      inet6 addr: fe80::76e3:9399:187d:fdad/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:65536  Metric:1
tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      inet addr:10.11.0.2  P-t-P:10.11.0.2  Mask:255.255.0.0
      inet6 addr: fdda:d0d0:cafe:1197::1000/64 Scope:Global
      inet6 addr: fe80::c9b:2e1b:882:1637/64 Scope:Link
      UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
      inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
      UP BROADCAST MULTICAST  MTU:1500  Metric:1

И сюда маршрутизация информации:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.11.0.1       0.0.0.0         UG    50     0        0 tun0
0.0.0.0         192.168.1.1     0.0.0.0         UG    100    0        0 enp0s21f5
10.11.0.0       0.0.0.0         255.255.0.0     U     50     0        0 tun0
89.238.176.34   192.168.1.1     255.255.255.255 UGH   100    0        0 enp0s21f5
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 enp0s21f5
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s21f5
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
5
задан 17 June 2017 в 13:03

2 ответа

Решение с wifi adapter и hostapd программное обеспечение:

sudo apt-get install hostapd -y

Настраивают hostapd

interface=wlan0
ssid=Your_WLAN
hw_mode=g # can be b/g/n
wpa=2
wpa_passphrase=PASS
wpa_key_mgmt=WPA-PSK WPA-EAP WPA-PSK-SHA256 WPA-EAP-SHA256

Редактирование /etc/network/interfaces

auto wlan0
iface wlan0 inet static
hostapd /etc/hostapd/hostapd.conf
address 192.168.0.1
netmask 255.255.255.0

, поскольку Ваш ПК является маршрутизатором, который необходимо позволить передать интерфейсам

  • 1-й путь echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p # персистентный режим
  • 2-й - echo 1 > /proc/sys/net/ip/ipv4/ip_forward

, Чтобы включить его на начальной загрузке и запустить его: systemctl включают hostapd & & systemctl запускают Установку hostapd

dnsmasq, поскольку это будет и Ваш DNS и dhcp сервер.

sudo apt install dnsmasq

редактирование это - conf файл: vi /etc/dnsmasq.conf

interface=lo,wlan0
no-dhcp-interface=lo
dhcp-range=192.168.0.2,192.168.0.254,255.255.255.0,12h

Iptables:

iptables -t nat -A POSTROUTING -o tun+ -j MASQUERADE

iptables -A FORWARD -i wlan+ -o tun+ -j ACCEPT
iptables -A FORWARD -o tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -m conntrack --ctstate ESTABLISHED,RELATED   -j ACCEPT
iptables -A INPUT -i tun+ -j ACCEPT

Сообщенный мне, если это работает на Вас.

4
ответ дан 23 November 2019 в 09:05

работы ответа беглеца, даже на Ubuntu 19.04, но если Вы не должны размещать интернет-соединение для своих других устройств локальной сети, затем можно пропустить несколько шагов.

Если все устройства подключены к Вашей LAN через Wi-Fi или соединены проводом, можно просто использовать эти шаги:

  • Подтвердите, что Ваш ПК с соединением VPN может передать пакеты как маршрутизатор

    1. кошка/proc/sys/net/ipv4/ip_forward ##this должна возвратиться '1', если она не делает шага 2
    2. отзовитесь эхом '1'>>/proc/sys/net/ipv4/ip_forward

или можно использовать sysctl.conf

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p #persistent mode

затем набор iptables к NAT и передачам пакетов, полученным в Вашем локальном интерфейсе LAN и отправленным из Вашего интерфейса бочки (VPN)

iptables -t nat -A POSTROUTING -o tun+ -j MASQUERADE

iptables -A FORWARD -i wlan+ -o tun+ -j ACCEPT #change wlan+ to match your LAN adapter
iptables -A FORWARD -o tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -m conntrack --ctstate ESTABLISHED,RELATED   -j ACCEPT
iptables -A INPUT -i tun+ -j ACCEPT

Наконец, на Вашем другом компьютере LAN, что Вы хотите использовать свою общую VPN - 1. используйте команду маршрута, чтобы добавить маршрут для подсетей VPN'd и установить шлюз на IP Вашего адаптера компьютерной сети LAN, который Вы устанавливаете в iptables (не бочка, но wlan + или en + адаптер)

пример: если компьютер с соединением VPN имеет en0 адаптер в Вашей локальной сети с IP 192.168.0.100, и Ваша VPN, доступная сетевая подсеть является 10.0.0.0/24

На Вашем другом компьютере LAN без соединения VPN Вы ввели бы маршрут cmd как - (для Windows OS)

route add 10.0.0.0 mask 255.0.0.0 192.168.0.100 metric 200 if <interface>
3
ответ дан 23 November 2019 в 09:05

Другие вопросы по тегам:

Похожие вопросы: