Commit Graph
306 Commits
Author SHA1 Message Date
yuhan6665 ab6811ed58 Fix flaky TestServiceSubscribeRoutingStats 2022-06-25 19:37:30 +01:00
Loyalsoldier c58a372d93 Fix: IP length not deterministic (#1267)
The length of IPv4 address in Go standard library could be 16
if it is in IPv6-mapped-IPv4 format.
2021-09-11 10:07:54 +08:00
Loyalsoldier f1902165c7 ♻️ refactor geoip match logic (#1157) 2021-09-10 16:31:25 +08:00
database64128 c78ee5aac7 🏡 Housekeeping: Update to Go 1.17 (#1215)
* ⬆ Update to Go 1.17

* 🏗 Update workflows and add windows-arm64

* 💾 Update generated files

* 📛 Update not-so-friendly filenames
2021-08-21 13:20:40 +08:00
Loyalsoldier 470acefef6 Fix: use sorted cidr list (#1156) 2021-07-22 10:43:21 +08:00
Shelikhoo 1409be04c2 regenerate protobuf files 2021-07-01 18:58:48 +01:00
fanyiguan 09d900c753 Update strategy_leastping.go (#1019) 2021-05-25 14:48:13 +01:00
Loyalsoldier 6f8979d017 Style: format code by gofumpt (#1022) 2021-05-20 05:28:52 +08:00
Loyalsoldier 1cb9fd2999 Chore: little refinements (#973) 2021-05-05 07:28:09 +08:00
loyalsoldier 40f8e82204 refine 2021-05-04 19:19:43 +01:00
Shelikhoo 3ba9a5b4f5 Refine geodata related tests (#967)
(cherry picked from commit 7805ca2ac1)
2021-05-04 19:13:52 +01:00
Shelikhoo 9458963b5a Revert "Refactor: memory-efficient geo file decoder (#934)"
This reverts commit 7e876709
2021-05-04 19:07:54 +01:00
Shelikhoo ace2c44c2b Revert "Refine geodata related tests (#967)"
This reverts commit 7805ca2a
2021-05-04 19:07:35 +01:00
Loyalsoldier 7805ca2ac1 Refine geodata related tests (#967) 2021-05-04 16:30:23 +08:00
Loyalsoldier 625a15e03b Chore: format code by new customized goimports (#950) 2021-05-01 11:15:39 +08:00
Loyalsoldier 7e876709fe Refactor: memory-efficient geo file decoder (#934) 2021-05-01 07:59:29 +08:00
Shelikhoo d7c9a98d76 apply coding style 2021-04-13 16:06:48 +01:00
Shelikhoo 6dcdd2afad Merge branch 'dev-advloadblancer-2' 2021-04-13 15:09:32 +01:00
Loyalsoldier 7790d33185 Fix: v2ray.location.asset env not working (#889) 2021-04-12 10:01:30 +08:00
Shelikhoo d16f00cc51 fix test with new init function signature 2021-04-12 01:17:49 +01:00
Shelikhoo caaf7f74f5 adjust test to match new init function 2021-04-09 16:02:45 +01:00
Shelikhoo 7728a472f6 regenerate protobuf file 2021-04-08 23:19:11 +01:00
Shelikhoo 1bcd770223 add confonly to strategy least ping 2021-04-08 23:18:25 +01:00
Shelikhoo 304b4feff6 bug fix to LeastPingStrategy 2021-04-08 23:18:25 +01:00
Shelikhoo 459a914ab7 apply coding style 2021-04-08 23:18:23 +01:00
Shelikhoo 5a61749328 add least balancing strategy 2021-04-08 23:17:52 +01:00
Loyalsoldier 10ca68f277 Feat: remove geo files from repo & refine tests (#869) 2021-04-07 03:08:03 +08:00
Loyalsoldier 3a50affa0a Feat: add reverse match for GeoIP (#860) 2021-04-06 12:29:12 +08:00
Loyalsoldier e6aaa57def Feat: add queryStrategy option for DNS (#794) 2021-03-19 15:55:18 +08:00
Loyalsoldier 9e9173acb4 Chore: update protobuf & dependencies (#793)
* Chore: update protobuf
* Chore: regenerate mock files
* Chore: update dependencies
* Chore: use Go v1.16.2 and later
2021-03-18 12:17:26 +08:00
loyalsoldier cb4dd644fc Chore: fix MphDomainMatcher log 2021-03-16 19:21:14 +08:00
kslr 68f04295f9 Route: mph add alias hybrid 2021-03-15 15:27:40 +08:00
DarthVader ac1e5cd925 Add minimal perfect hash domain matcher (#743)
* rename to HybridDomainMatcher & convert domain to lowercase

* refactor code & add open hashing for rolling hash map

* fix lint errors

* update app/dns/dns.go

* convert domain to lowercase in `strmatcher.go`

* keep the original matcher behavior

* add mph domain matcher & conver domain names to loweercase when matching

* fix lint errors

* fix lint errors
2021-03-15 15:21:38 +08:00
Loyalsoldier e46204f828 Chore: fix lint according to golangci-lint errors (#781)
* Chore: fix lint according to golangci-lint errors
* Chore: regenerate pb.go files
2021-03-14 07:44:47 +08:00
Loyalsoldier e03947e6b0 Chore: update protobuf & dependencies (#748) 2021-03-08 05:12:27 +08:00
Shelikhoo e24ddf588e Create a name for linear domain matcher 2021-03-07 13:39:36 +00:00
Shelikhoo 0043dd6685 rename config for NewACAutomatonDomainMatcher to hybrid 2021-03-05 18:36:36 +00:00
Shelikhoo e65f96fa6b output debug message when ACAutomatonDomainMatcher is enabled. 2021-03-03 22:56:12 +00:00
Shelikhoo 9d653dc708 Apply domain selector choice 2021-03-03 22:27:23 +00:00
Shelikhoo 837d5e7618 Allow the selection of domain matcher 2021-03-03 22:23:52 +00:00
DarthVader a31a8e6f89 A memory-efficient and fast hybrid matcher (#639)
* a faster DomainMatcher implementation

* rename benchmark name

* fix linting errors

* add hybrid matcher

* add rabin-karp algorithm

* rename test & fix linting errors

* add more comment

* format code

* revert `MatcherGroup` match func

* fix linting errors
2021-03-04 05:39:51 +08:00
Loyalsoldier 49cf614346 Chore: update dependencies & protobuf (#728) 2021-03-03 17:31:53 +08:00
yuhan6665andloyalsoldier afb8385a7e Feat: routing and freedom outbound ignore Fake DNS (#696)
Turn off fake DNS for request sent from Routing and Freedom outbound.
Fake DNS now only apply to DNS outbound.
This is important for Android, where VPN service take over all system DNS
traffic and pass it to core.  "UseIp" option can be used in Freedom outbound
to avoid getting fake IP and fail connection.

Co-authored-by: loyalsoldier <10487845+Loyalsoldier@users.noreply.github.com>
2021-02-23 10:17:20 +08:00
Loyalsoldier f94dd11a8c Chore: change module name (#677) 2021-02-17 04:31:50 +08:00
Loyalsoldier f98944c9e0 Chore: update protobuf (#670) 2021-02-11 14:57:20 +08:00
DarthVader de618121ad Refactor: A faster DomainMatcher implementation (#587)
* a faster DomainMatcher implementation

* rename benchmark name

* fix linting errors
2021-01-20 15:53:07 +08:00
loyalsoldier 87e857ee3f Chore: minor fixes 2021-01-01 12:52:04 +08:00
V2Fly Team 66e203f156 DNS: refine skipRoutePick (#558) 2020-12-30 18:35:19 +08:00
Loyalsoldier b68f943c78 Fix lint according to golangci-lint (#439) 2020-11-22 05:05:01 +08:00
Chinsyo 2ac380788b Some minor fixes (#433) 2020-11-20 01:02:52 +08:00