{"id":18822847,"url":"https://github.com/a2nt/russian-routing","last_synced_at":"2025-07-07T00:08:27.594Z","repository":{"id":148322264,"uuid":"131255863","full_name":"a2nt/russian-routing","owner":"a2nt","description":"Setup VPN and route Russian GOV and ORG services without VPN","archived":false,"fork":false,"pushed_at":"2018-05-13T18:15:21.000Z","size":55,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-14T01:35:52.011Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/a2nt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-27T06:35:44.000Z","updated_at":"2022-10-03T21:12:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"cf2e4486-2dac-428b-910f-02273972d0f4","html_url":"https://github.com/a2nt/russian-routing","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/a2nt/russian-routing","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a2nt%2Frussian-routing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a2nt%2Frussian-routing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a2nt%2Frussian-routing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a2nt%2Frussian-routing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/a2nt","download_url":"https://codeload.github.com/a2nt/russian-routing/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a2nt%2Frussian-routing/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263991449,"owners_count":23540666,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T00:51:52.368Z","updated_at":"2025-07-07T00:08:27.555Z","avatar_url":"https://github.com/a2nt.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VPN bypass white-list client side routing\n\nSetup your client VPN and route Russian GOV, ORG services and listed websites traffic without VPN.\nIt's useful to save VPN traffic and to prevent VPN-usage detection.\n\nAlso this script routes some video streaming services without VPN to save traffic and reach better speed.\n\nThis script is mend to setup routing. It doesn't sets up your VPN-client or VPN-server.\nSee details bellow.\n\n## INSTALATION (Linux, see details bellow for another OS)\n\n```\ngit clone https://github.com/a2nt/russian-routing.git\ncd russian-routing\nsudo ./install.sh\n```\n\n## Auto launch script on VPN connection\n\nAdd following lines to your ovpn-file: \n```\nscript-security 2\n# run /etc/openvpn/routing.sh when the connection is set up\nup /etc/openvpn/routing.sh\n```\n\n## Automatically start/restart VPN-connection on any network connected (Linux)\n\nAdd following lines to /etc/NetworkManager/dispatcher.d/vpn-up:\n```\n#! /bin/bash\n\n# start VPN connection using Linux NetworkManger CLI\nnmcli con up id \"\u003cYOUR-VPN-CONNECTION-NAME\u003e\"\n\n# start script if it wasn't set inside ovpn-file\n/etc/openvpn/routing.sh\n```\n\n## USAGE\n\nAdd extra domain name (See bellow for details):\n```\nsudo nano /etc/openvpn/extra.domains.list.txt\n```\n\nRelaunch routing.sh\n```\nsudo /etc/openvpn/routing.sh\n```\n\n## ISSUES\nThere's a list of Russian TOP hosters' and providers' networks.\nWe think they doesn't respect privacy so we'd like to by-pass them.\n\nIt's very long list, some of them are duplicated, but that's ok.\nJust remove it if you need to make the script work faster or your router doesn't support long routing tables.\n\n## TESTING\n\n### You can test if it was successful using:\n\n```\ntraceroute \u003cDOMAIN-NAME\u003e\n```\n\n#### Result will look this way:\n\n```\n1  _gateway (\u003cGATEWAYIP\u003e)  *** ms  *** ms  *** ms\n2 *******************************\n ****************\n ```\n\n#### Wrong result will look this way:\n\n```\n1  _gateway (\u003cYOUR-VPN-IP\u003e)  *** ms  *** ms  *** ms\n2 *******************************\n ****************\n```\n\n## routing.sh\n\nRoutes servers' traffic without VPN\n#### Yes, you can use it at the rooted device, but it needs to support: bash, dig and of course VPN-client.  \n\nMust be launched as root after connecting to VPN.\n\nex:\n```\nsudo ./routing.sh\n```\n\nUse ifconfig to get variables as \u003cGATEWAYIP\u003e (your router IP) and \u003cREGULARINTERFACE\u003e (your network interface name) and set it at the routing.sh\notherwise script will detect it automatically\n\n### You can add extra domains to auto-detect their IPs and route them without VPN\nJust add a line to extra.domains.list.txt with desired domain name (don't add www.)\nex:\n```\nthe-village.ru\n```\n\n(Don't forget to keep extra.domains.list.txt at the same directory with routing.sh)\n\n### You can add extra server IPs using\n\n```\ndig \u003cDOMAIN-NAME\u003e\n```\nor https://toolbox.googleapps.com/apps/dig/\nor search for networks by ORG: https://bgp.he.net/search?search%5Bsearch%5D=VKONTAKTE\u0026commit=Search\n\nTo add routing for a specific IP use following syntax:\nsudo nano /etc/openvpn/routing.sh\n```\nip route add \u003cRU-SERVER-IP\u003e via $GATEWAYIP dev $REGULARINTERFACE proto static metric 600\n```\n\n## Extras\n\nYou can use https://github.com/Angristan/OpenVPN-install/ to setup your own VPN server.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa2nt%2Frussian-routing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fa2nt%2Frussian-routing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa2nt%2Frussian-routing/lists"}