Simplemente elimine LDFLAGS en linux.mk
LINUX_MAKE_FLAGS = \
- HOSTCC="$(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS)" \
+ HOSTCC="$(HOSTCC) $(HOST_CFLAGS)" \
ARCH=$(KERNEL_ARCH) \
INSTALL_MOD_PATH=$(TARGET_DIR) \
CROSS_COMPILE="$(TARGET_CROSS)" \
Мне удалось решить эту проблему с помощью моста Ethernet .
Это были бы шаги:
systemctl stop openvpn@server
yum install bridge-utils
openvpn --mktun --dev tap0
brctl addbr br0
brctl addif br0 eth0
brctl addif br0 tap0
ifconfig tap0 0.0.0.0 promisc up
ifconfig eth0 0.0.0.0 promisc up
ifconfig br0 10.0.4.23 netmask 255.255.0.0 broadcast 10.0.255.255
iptables -A INPUT -i tap0 -j ACCEPT
iptables -A INPUT -i br0 -j ACCEPT
iptables -A FORWARD -i br0 -j ACCEPT
/etc/openvpn/server/server.conf
, закомментируйте dev tun
и добавьте dev tap0
справа под ним или над ним. server
, и добавьте IP-адрес, который изначально был на eth0, а теперь на br0, а также добавьте диапазон адресов DHCP, которые VPN будет назначать клиентам, например:bridge 10.0.4.23 255.255.0.0 10.0.13.2 10.0.13.254
Это позволит серверу сдавать адреса 10.0.13.2 -10.0.13.254 клиентам.
systemctl start openvpn@servers
. Из вашего описания я вижу, что отсутствует одна конфигурация, :вы не указали своим другим серверам, как получить доступ к VPN-клиентам.
При отсутствии такой конфигурации любой хост, имеющий адрес сети 10.0/16
, по умолчанию будет предполагать, что любой другой адрес той же сети, включая сеть 10.0.13/24
sub -, находится «на канале -». " т.е. доступен напрямую без промежуточного маршрутизатора.
В качестве примера теста попробуйте ip r add 10.0.13.0/24 via 10.0.4.23
подключиться к любому из ваших других серверов Linux (, а не к серверу OpenVPN ), принадлежащему 10.0/16
сети :после этого, трафик должен регулярно проходить между этим конкретным сервером Linux и клиентами OpenVPN.
Конечно, то же самое относится ко всем и любому хосту в вашей 10.0/16
частной сети, будь то Linux, Windows, Mac, Cisco или что-то еще. На практике вы должны установить этот маршрут на все ваши хосты в вашей частной сети.
Естественно, это может быть нежелательно, если у вас много хостов. Лучшим (сетевым -мудрым )подходом было бы сделать ваш сервер OpenVPN своего рода центральным шлюзом для всей вашей частной сети, возможно, буквально шлюзом по умолчанию для всех этих хостов.
Предполагая, что это невозможно, если у вас уже есть такой «центральный шлюз» в вашей частной сети (, возможно, ваш 10.0.0.65
хост? ), тогда вы можете попытаться настроить только этот с маршрутом выше :, другие хосты (, ссылающиеся на этот шлюз ), должны обычно подчиняться и соответствовать. Однако это решение обычно может быть неоптимальным -, поскольку оно заставляет эти хосты часто повторно -маршрутизироваться «центральным шлюзом» к шлюзу сервера OpenVPN.
Другие альтернативы включают установку специальных конфигураций на вашем Linux-сервере, который действует как сервер OpenVPN, чтобы он также действовал как своего рода «прокси -arp» для вашего OpenVPN. адреса клиента.Возможно, но сложно и продвинуто.
Мостовое решение — это, безусловно, решение, быстрое и простое, но оно подразумевает, что весь широковещательный трафик, который может передаваться в локальной сети -среднего -размера, распространяется на все ваши клиенты OpenVPN, таким образом занимая ресурсы вашего сервера OpenVPN и ваше интернет-соединение с вашими клиентами и от них, каждый отдельный широковещательный кадр умножается на количество подключенных клиентов.