LINUX.ORG.RU
ФорумAdmin

Прошу помощи с настройкой роутера

 ,


0

2

Сабж, поднял роутер, работает, но не уверен, что сделал я всё правильно, если у кого-то есть опыт в этом деле, пожалуйста помогите. Сейчас покажу как всё сделал.

Установил iptables, dnsmasq и openvpn

Конфиг /etc/network/interfaces:

Длинное имя интерфейса wlxb*** заменил на wlan0 для наглядности.

auto lo
iface lo inet loopback

auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp

auto eth0
iface eth0 inet static
    address 10.128.10.1
    network 10.128.10.0
    netmask 255.255.255.0
    broadcast 10.128.10.255

Здесь я предполагаю что входящий интернет трафик должен приходить на wlan0, а выходить через eth0.

Конфиг /etc/dnsmasq.conf, пример которого я подсмотрел в сети:

server=8.8.8.8
server=8.8.4.4

domain-needed
bogus-priv

# Listen only given interfaces
interface=lo
interface=eth0
bind-interfaces

# DNS cache size
cache-size=15000

# IP ranges
dhcp-range=eth0,10.128.10.50,10.128.10.250

# Default gateways
dhcp-option=eth0,3,10.128.10.1

# DNS servers
dhcp-option=eth0,6,10.128.10.1

Настройки iptables:

iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Здесь, как мне кажется, я указал проброс интернета через vpn. Проброс в /etc/sysctl.conf я разрешил.

Всё ли тут работает как задумал я, всё правильно сделал, нигде не накосячил, всё учёл? Судя по всему где-то накосячил, systemctl list-units –type=service выплевывает это:

● networking.service                 loaded failed failed  Raise network interfaces

sudo journalctl -u networking.service:

May 01 17:11:40 rout ifup[452]: ifup: waiting for lock on /run/network/ifstate.wlan0
May 01 17:11:52 rout ifup[1349]: RTNETLINK answers: File exists
May 01 17:11:52 rout ifup[452]: ifup: failed to bring up eth0
May 01 17:11:53 rout systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
May 01 17:11:53 rout systemd[1]: networking.service: Failed with result 'exit-code'.
May 01 17:11:53 rout systemd[1]: Failed to start Raise network interfaces.
-- Boot a992cfd351dc4009902d84c2d35a0a5d --
May 01 18:36:09 rout ifup[456]: ifup: waiting for lock on /run/network/ifstate.wlan0
May 01 18:36:36 rout ifup[1374]: RTNETLINK answers: File exists
May 01 18:36:36 rout ifup[456]: ifup: failed to bring up eth0
May 01 18:36:36 rout systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
May 01 18:36:36 rout systemd[1]: networking.service: Failed with result 'exit-code'.
May 01 18:36:36 rout systemd[1]: Failed to start Raise network interfaces.

Прокомментирую то, в чем понимаю. Гугловский DNS просто самый известный, но обычно медленнее провайдерского. Попробуй CloudFlare - скорость должна быть выше.

Судя по логам, у тебя что-то пытается поднять уже поднятое соединение, но я могу ошибаться.

Vidrele ★★★
()
Ответ на: комментарий от Vidrele

Попробуй CloudFlare - скорость должна быть выше.

Спасибо, учёл.

Судя по логам, у тебя что-то пытается поднять уже поднятое соединение, но я могу ошибаться.

Сейчас выдаёт другие логи, сейчас покажу.

c3FT
() автор топика

Вот, теперь такие логи. sudo journalctl -u networking.service:

-- Journal begins at Tue 2023-05-02 01:21:55 MSK, ends at Tue 2023-05-02 03:01:33 MSK. --
May 02 01:26:05 rout systemd[1]: Stopping Raise network interfaces...
May 02 01:26:05 rout systemd[1]: networking.service: Succeeded.
May 02 01:26:05 rout systemd[1]: Stopped Raise network interfaces.
-- Boot b464f7da17a84e81b6978e0b9347249f --
May 02 01:40:08 rout systemd[1]: Stopping Raise network interfaces...
May 02 01:40:09 rout systemd[1]: networking.service: Succeeded.
May 02 01:40:09 rout systemd[1]: Stopped Raise network interfaces.
-- Boot 78e31a174d3141029ffb1cdc9b68934d --
May 02 01:43:58 rout systemd[1]: Stopping Raise network interfaces...
May 02 01:43:59 rout systemd[1]: networking.service: Succeeded.
May 02 01:43:59 rout systemd[1]: Stopped Raise network interfaces.
-- Boot 07f50ae6d24e49ad91b8241b1935a0d3 --
May 02 01:49:23 rout systemd[1]: Stopping Raise network interfaces...
May 02 01:49:23 rout systemd[1]: networking.service: Succeeded.
May 02 01:49:23 rout systemd[1]: Stopped Raise network interfaces.
May 02 01:49:23 rout systemd[1]: Starting Raise network interfaces...
May 02 01:49:23 rout dhclient[1458]: Internet Systems Consortium DHCP Client 4.4.1
May 02 01:49:23 rout ifup[1458]: Internet Systems Consortium DHCP Client 4.4.1
May 02 01:49:23 rout ifup[1458]: Copyright 2004-2018 Internet Systems Consortium.
May 02 01:49:23 rout ifup[1458]: All rights reserved.
May 02 01:49:23 rout ifup[1458]: For info, please visit https://www.isc.org/software/dhcp/
May 02 01:49:23 rout dhclient[1458]: Copyright 2004-2018 Internet Systems Consortium.
May 02 01:49:23 rout dhclient[1458]: All rights reserved.
May 02 01:49:23 rout dhclient[1458]: For info, please visit https://www.isc.org/software/dhcp/
May 02 01:49:23 rout dhclient[1458]: 
May 02 01:49:23 rout dhclient[1458]: Listening on LPF/wlan0/здесь мой мак адрес судя по всему
May 02 01:49:23 rout ifup[1458]: Listening on LPF/wlan0/здесь мой мак адрес 
May 02 01:49:23 rout ifup[1458]: Sending on   LPF/wlan0/здесь мой мак адрес 
May 02 01:49:23 rout ifup[1458]: Sending on   Socket/fallback
May 02 01:49:23 rout ifup[1458]: Created duid "\000\001\000\001+\342\376s\270:5\340\010\240".
May 02 01:49:23 rout dhclient[1458]: Sending on   LPF/wlan0/здесь мой мак адрес 
May 02 01:49:23 rout ifup[1458]: DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 6
May 02 01:49:23 rout dhclient[1458]: Sending on   Socket/fallback
May 02 01:49:23 rout dhclient[1458]: Created duid "\000\001\000\001+\342\376s\270:5\340\010\240".
May 02 01:49:23 rout dhclient[1458]: DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 6
May 02 01:49:24 rout dhclient[1458]: DHCPOFFER of 192.168.0.114 from 192.168.0.1
May 02 01:49:24 rout ifup[1458]: DHCPOFFER of 192.168.0.114 from 192.168.0.1
May 02 01:49:24 rout ifup[1458]: DHCPREQUEST for 192.168.0.114 on wlan0 to 255.255.255.255 port 67
May 02 01:49:24 rout dhclient[1458]: DHCPREQUEST for 192.168.0.114 on wlan0 to 255.255.255.255 port 67
May 02 01:49:24 rout dhclient[1458]: DHCPACK of 192.168.0.114 from 192.168.0.1
May 02 01:49:24 rout ifup[1458]: DHCPACK of 192.168.0.114 from 192.168.0.1
May 02 01:49:24 rout ifup[1470]: RTNETLINK answers: File exists
May 02 01:49:24 rout ifup[1480]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
May 02 01:49:24 rout dhclient[1458]: bound to 192.168.0.114 -- renewal in 464502283 seconds.
May 02 01:49:24 rout ifup[1458]: bound to 192.168.0.114 -- renewal in 464502283 seconds.
May 02 01:49:25 rout systemd[1]: Finished Raise network interfaces.
May 02 02:08:06 rout systemd[1]: Stopping Raise network interfaces...
May 02 02:08:06 rout dhclient[1458]: receive_packet failed on wlan0: Network is down
May 02 02:08:06 rout ifdown[2919]: RTNETLINK answers: No such process
May 02 02:08:07 rout ifdown[2948]: RTNETLINK answers: No such process
May 02 02:08:07 rout dhclient[2964]: Killed old client process
May 02 02:08:07 rout ifdown[2964]: Killed old client process
May 02 02:08:08 rout dhclient[2964]: Internet Systems Consortium DHCP Client 4.4.1
c3FT
() автор топика
Ответ на: комментарий от firkax

Днсы тебе выдаёт провайдер, их и надо использовать.

Человек заворачивает весь трафик в VPN. Если провайдер дает DNS на внутренних IP, надо позаботиться, чтобы DNS-запросы ходили мимо тоннеля. Но тогда провайдер будет знать, на какие ресурсы человек ходит. Если он просто обходит блокировки, то пофиг. Если он таким образом избегает слежки, то нет.

Предположим, что DNS-серверы все-таки находятся на внешних IP. Резолвить адреса по маршруту ООО «Жмеринские домовые сети» – Амстердам – ООО «Жмеринские домовые сети»? Уж лучше 8.8.8.8 и 8.8.4.4. Ну или снова настраивать хождение на DNS мимо тоннеля. И снова: слежка.

Теперь рассмотрим вариант без VPN. Провайдерские DNS-серверы могут быть просто медленными, даже медленнее Google DNS. Еще я работал в провайдере, где DNS в целом работал хорошо, но почему-то со временем отваливался на Asus RT-N10 и некоторых других моделях. Перезагрузка помогала, но не надолго. Помогает 8.8.8.8 и 8.8.4.4, а еще лучше 1.1.1.1 и 1.1.0.0.

Теперь блокировки. Наименее проблемные провайдеры просто подсовывают MITM-страницу с самоподписанным сертификатом по заблокированным IP. Но некоторые в нагрузку подменяют IP через собственные DNS-сервера, и тут непременно нужны сторонние.

Более того, есть провайдеры, которые коверкают чужие DNS-ответы (привет, Киевстар!) Тут приходится или заворачивать DNS в VPN, или настраивать DNS over HTTPS. Либо же иным способом запихивать DNS-запросы и ответы в защищенный канал (DNSCrypt, DNS over TLS).

Vidrele ★★★
()
Ответ на: комментарий от Vidrele

Человек заворачивает весь трафик в VPN.

А, это я проглядел. Но и автор тоже хорош: ни слова про впн ни в названии темы, ни в тегах, а в тексте сообщения только в одном месте, которое незачем читать, ибо оно выглядит как «установил нужные программы».

Резолвить адреса по маршруту ООО «Жмеринские домовые сети» – Амстердам – ООО «Жмеринские домовые сети»

Не, так не получится, у всех норм провов свои днсы только для своих клиентов (и дело не во внешних айпи, а в фильтре в самом днс-сервере). Ну вобщем-то не суть уже с учётом вышесказанного.

firkax ★★★★★
()
Ответ на: комментарий от Vidrele

Теперь рассмотрим вариант без VPN.

Это, как я теперь понял, к теме не относится. Но всё же в этом случае твои аргументы я отклоняю и считаю что надо пользоваться провайдерскими. Провайдерские днсы это элемент децентрализованного интернета, как он был (хорошо) задуман. А всякие 8.8.8.8 это значит потакать интернет-монополистам, которые их содержат (дарить им свои логи посещения доменов и рекламировать их среди тех, кто так или иначе увидит твои настройки), не надо так делать, это причина идеологическая, и никакие технические её не перевесят.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Но и автор тоже хорош

Управлять вниманием читателя – отдельный навык. Мы же не на форуме писателей, правильно?

Не, так не получится, у всех норм провов свои днсы только для своих клиентов (и дело не во внешних айпи, а в фильтре в самом днс-сервере).

Спасибо, буду знать.

Vidrele ★★★
()
Ответ на: комментарий от firkax

А всякие 8.8.8.8 это значит потакать интернет-монополистам, которые их содержат (дарить им свои логи посещения доменов и рекламировать их среди тех, кто так или иначе увидит твои настройки)

Одни рекламу показывают, а другие годами хранят логи твоих действий для товарища майора. Уж лучше терпеть, что тебя профилирует Google. А еще лучше пользоваться CloudFlare, который зарабатывает не на рекламе и ни разу не монополист на фоне CDN от Amazon и Microsoft.

Кроме того, вполне возможно, что VPN-провайдер тоже предоставляет DNS.

А еще можно купить VDS и на нем развернуть VPN и DNS.

Vidrele ★★★
()
Ответ на: комментарий от Vidrele

Если речь про прямое подключение через провайдера (без впн), то логи действий он сохранит вне зависимости от того, какими днс ты пользуешься. Всякие шифрованные днсы чуть осложнят ему ситуацию, но в целом не критично. Т.е. выбор между «только провайдер» и «и провайдер и гугл/клаудфлар/итд», лучше первое.

CloudFlare, который зарабатывает не на рекламе и ни разу не монополист

Посмотри его долю в интернет трафике, сомнения в монополизме (ну ладно, если строго то не моно- а олиго-, не суть) отпадут. А на чём он зарабатывает - ну, я бы расширил вопрос, на «чем занимается», чтобы не ограничиваться финансовыми аспектами. У него доступ к нешифрованному трафику огромного количества сайтов, было бы странно если бы службы страны его локализации этим не захотели воспользоваться.

А еще можно купить VDS и на нем развернуть VPN и DNS.

Ну вот это уже явно лучше чем гуглоднс.

firkax ★★★★★
()
Ответ на: комментарий от firkax

ни слова про впн ни в названии темы, ни в тегах

Думаю это вторично, интерфейс run0 можно заменить на любой другой, например на eth1, как я понял, смысл останется примерно таким же.

Меня больше интересуют другие моменты настройки роутера. Ваши мнения о DNS я услышал.

c3FT
() автор топика
Ответ на: комментарий от Vidrele

Вообще не думал, что в этом треде придется рассуждать на такие, как казалась на первый взгляд малозначительные вещи, эту настройку я просто с сети скопировал.

c3FT
() автор топика
Ответ на: комментарий от c3FT

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

Vidrele ★★★
()
Ответ на: комментарий от Vidrele

1.1.1.1 и 1.1.0.0

Очепяточка вышла. Правильный адрес 1.0.0.1, который в сокращённой нотации записывается (и воспринимается софтом) как 1.1 ЕМНИП, клаудфлейр решил использовать такой адрес т.к. 1.1.1.1 иногда конфликтует со старым оборудованием циско, которое коварно использует 1.1.1.1 под веб морду.

GLaDOS
()
Ответ на: комментарий от GLaDOS

Очепяточка вышла. Правильный адрес 1.0.0.1

И точно! Я таки не опечатался, а именно ошибся. When I’m wrong, I say I’m wrong.

1.1.1.1 иногда конфликтует со старым оборудованием циско, которое коварно использует 1.1.1.1 под веб морду.

Спасибо, буду знать.

Vidrele ★★★
()