zyxmon Posted March 31, 2021 Author Share Posted March 31, 2021 7 минут назад, krass сказал: Ждем инструкцию -- как поставить на кинетик , чтобы не было проблем с использованием этого vpn . Все необходимое для написания в инструкции в теме уже есть. Остается только определить скрипты для netfilter.d - а они разные, скорее всего в зависят от того, задается ли exit node, или же advertise-routes, или же.... 1 1 Quote Link to comment Share on other sites More sharing options...
zyxmon Posted March 31, 2021 Author Share Posted March 31, 2021 Бесплатно продаю идею, как вычислить необходимые правила для скрипта. Создаем файл #!/opt/bin/sh echo $* >> /opt/root/ip.txt /opt/sbin/tables-multi iptables $* делаем его исполняемым, и _временно_ заменяем файл iptables этим файлом. Запускаем tailscale. В файле /opt/root/ip.txt и будут нужные правила. Для `tailscale up` без дополнительных параметров, там будет примерно такое -t filter -C FORWARD -m comment --comment tailscale -i tailscale0 -j ACCEPT --wait -t nat -C POSTROUTING -m comment --comment tailscale -o eth0 -j MASQUERADE --wait -t filter -N ts-input --wait -t filter -N ts-forward --wait -t nat -N ts-postrouting --wait -t filter -N ts-input --wait -t filter -F ts-input --wait -t filter -N ts-forward --wait -t filter -F ts-forward --wait -t nat -N ts-postrouting --wait -t nat -F ts-postrouting --wait -t filter -C INPUT -j ts-input --wait -t filter -I INPUT 1 -j ts-input --wait -t filter -C FORWARD -j ts-forward --wait -t filter -I FORWARD 1 -j ts-forward --wait -t nat -C POSTROUTING -j ts-postrouting --wait -t nat -I POSTROUTING 1 -j ts-postrouting --wait -t filter -A ts-input ! -i tailscale0 -s 100.115.92.0/23 -j RETURN --wait -t filter -A ts-input ! -i tailscale0 -s 100.64.0.0/10 -j DROP --wait -t filter -A ts-forward -i tailscale0 -j MARK --set-mark 0x40000 --wait -t filter -A ts-forward -m mark --mark 0x40000 -j ACCEPT --wait -t filter -A ts-forward -o tailscale0 -s 100.64.0.0/10 -j DROP --wait -t filter -A ts-forward -o tailscale0 -j ACCEPT --wait -t filter -I ts-input 1 -i lo -s 100.85.86.2 -j ACCEPT --wait -t nat -A ts-postrouting -m mark --mark 0x40000 -j MASQUERADE --wait Тут в предпоследней строке ip адрес talescaled0 интерфейса - его нужно вычислить и подставить. Может потребоваться еще одно правило для INPUT с предыдущей страницы. Дальше уж сами...... 1 Quote Link to comment Share on other sites More sharing options...
zyxmon Posted April 1, 2021 Author Share Posted April 1, 2021 В командной строке tailscale есть дополнительные параметры ~ # tailscale up --help USAGE up [flags] "tailscale up" connects this machine to your Tailscale network, triggering authentication if necessary. The flags passed to this command are specific to this machine. If you don't specify any flags, options are reset to their default. FLAGS <тут пропущено> -netfilter-mode on netfilter mode (one of on, nodivert, off) <тут пропущено> Документации на флаг netfilter-mode я не нашел, из исходников case "nodivert": prefs.NetfilterMode = preftype.NetfilterNoDivert warnf("netfilter=nodivert; add iptables calls to ts-* chains manually.") case "off": prefs.NetfilterMode = preftype.NetfilterOff warnf("netfilter=off; configure iptables yourself.") Поэтому я бы запускал tailscale up с флагом `-netfilter-mode off` и в хуках netfilter прописал правила, как для openvpn (bp Entware) Для filter /opt/sbin/iptables -I FORWARD -o tailscale0 -j ACCEPT /opt/sbin/iptables -I FORWARD -i tailascale0 -j ACCEPT /opt/sbin/iptables -I INPUT -i tailscale0 -j ACCEPT А для таблицы nat iptables -t nat -A POSTROUTING -o tailscale0 -j MASQUERADE Думаю знатоки iptables осилят (я таковым не являюсь). Quote Link to comment Share on other sites More sharing options...
aarnet Posted July 9, 2021 Share Posted July 9, 2021 инстирукции не будет ? Quote Link to comment Share on other sites More sharing options...
vlad Posted July 21, 2021 Share Posted July 21, 2021 У кого-то получилось сделать выход в интернет через keenetic? Поделитесь правилами iptables! Не могу разобраться. Quote Link to comment Share on other sites More sharing options...
Absaz Posted October 9, 2021 Share Posted October 9, 2021 Служба поддержки Keenetic не ответила на мой вопрос, поэтому задам его здесь. На роутере установлен Entware и сервис tailscale. Настроен доступ к роутеру из Интернета по его IP-адресу в локальной сети: веб-конфигуратору (порт 80), к консоли командной строки CLI (порт 22) и к веб-интерфейсу Transmission (порт 8090). Однако, нет доступа из Интернета к серверам SMB и DLNA, а также к консоли командной строки OPKG (порт 222), хотя из локальной сети он есть. Не смог получить доступ к файлам на подключенном к роутеру USB-диске через SFTP-сервер, но без проблем настроил такой доступ через FTP-сервер. Явно нужно что-то открыть в настройках роутера (межсетевого экрана, задать правила переадресации портов), чтобы появился доступ серверам SMB и DLNA, а также к консоли командной строки OPKG (порт 222), но моих знаний для этого не хватает. Quote Link to comment Share on other sites More sharing options...
Orbit Posted March 13 Share Posted March 13 Как убрать ошибку? 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: __clone()+0x6c 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: start()+0xcc 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Thread::StartRoutine_(void*)+0x420 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Task::Thread::Run()+0x38 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Task::Thread::Run_()+0x464 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::ThreadPool::Task_::Run()+0x208 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::ThreadPool::Task_::ProcessJsonRequest_(Core::Configurator&, Core::Scgi::Request const&, Core::Scgi::Trace&, Array<char>&, Io::OStream&)+0x54c 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::JsonPost(Core::Configurator&, Core::Scgi::Request const&, Json::Document const&, Core::Scgi::Trace&, Json::Document&, bool*)+0x1dc 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xf1c 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xf1c 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xf1c 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xa38 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Configurator::Serve(Command::Request const&, Command::Response&)+0x5a0 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Core::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x274 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Command::(anonymous namespace)::ShowIpv6Route::Execute(Command::Request const&, Command::Response&) const+0x118 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Network::Ip6::RoutingTable::GetRoutes(AutoPVector<Network::Ip6::RoutingTable::Entry, StdDeleter>&, CString const&, Network::Ip6::CBlock const&, unsigned int, Log::VerboseT) const+0xb8 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: Network::Ip6::RoutingTable::GetRoutes_(AutoPVector<Network::Ip6::RoutingTable::Entry, StdDeleter>&, LockedPtr<Network::Interface::Ip6 const> const&, Network::Ip6::CBlock const&, unsigned int, bool, Log::VerboseT) const+0xfc 03-13-2023 11:48:21 User.Error 192.168.77.1 Mar 13 11:48:19 Keenetic-1300 ndm: Network::Ip6::RoutingTable: "Queue::BVOFTLCNTRGPKQMC::http/rci" (29883) backtrace: Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.