"
}
}
]
}
```
- Re-enable ReadV
### License
GPL v3
### Credits
This repo relies on the following projects:
- [SagerNet/LibSagerNetCore](https://github.com/SagerNet/LibSagerNetCore)
================================================
FILE: Other/v2ray-sn/build.ps1
================================================
Set-Location (Split-Path $MyInvocation.MyCommand.Path -Parent)
git clone https://github.com/SagerNet/v2ray-core.git -b 'v5.0.16' src
if ( -Not $? ) {
exit $lastExitCode
}
Set-Location src
# Download SSR plugin
Invoke-WebRequest -Uri 'https://gist.githubusercontent.com/H1JK/b3165a99b635dcc06101690e4c43b5fd/raw/691b471f3b395a949d03a3d064d93d319d4997b7/ssr.go' -OutFile '.\proxy\shadowsocks\plugin\self\ssr.go'
# Download Simple-Obfs plugin
Invoke-WebRequest -Uri 'https://gist.githubusercontent.com/H1JK/b3165a99b635dcc06101690e4c43b5fd/raw/691b471f3b395a949d03a3d064d93d319d4997b7/obfs.go' -OutFile '.\proxy\shadowsocks\plugin\self\obfs.go'
# Enable ReadV (Use old ReadV code)
Remove-Item '.\common\buf\io.go'
Remove-Item '.\common\buf\readv_reader.go'
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/SagerNet/v2ray-core/2711fd1/common/buf/io.go' -OutFile '.\common\buf\io.go'
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/SagerNet/v2ray-core/2711fd1/common/buf/readv_reader.go' -OutFile '.\common\buf\readv_reader.go'
$Env:CGO_ENABLED='0'
$Env:GOROOT_FINAL='/usr'
$Env:GOOS='windows'
$Env:GOARCH='amd64'
go get -u ./...
go mod tidy
go build -a -trimpath -asmflags '-s -w' -ldflags '-s -w -buildid=' -o '..\..\release\v2ray-sn.exe' '.\main'
exit $lastExitCode
================================================
FILE: Other/wintun/build.ps1
================================================
Set-Location (Split-Path $MyInvocation.MyCommand.Path -Parent)
try {
Invoke-WebRequest `
-Uri 'https://www.wintun.net/builds/wintun-0.13.zip' `
-OutFile 'wintun.zip'
}
catch {
exit 1
}
7z x 'wintun.zip'
if ( -Not $? ) { exit $lastExitCode }
mv -Force 'wintun\bin\amd64\wintun.dll' '..\release\wintun.dll'
rm -Recurse -Force 'wintun'
rm -Recurse -Force 'wintun.zip'
exit 0
================================================
FILE: README.md
================================================
# `In preparation for 2.0, this repository will be cleared of all 1.0 related releases and code`

# Netch
A simple proxy client
[](https://t.me/netch_group)
[](https://t.me/netch_channel)
[](https://github.com/netchx/netch/releases)
[](https://github.com/netchx/netch/releases)
## Features
Some features may not be implemented in version 1
### Modes
- `ProcessMode` - Use Netfilter driver to intercept process traffic
- `ShareMode` - Share your network based on WinPcap / Npcap
- `TunMode` - Use WinTUN driver to create virtual adapter
- `WebMode` - Web proxy mode
### Protocols
- [`Socks5`](https://www.wikiwand.com/en/SOCKS)
- [`Shadowsocks`](https://shadowsocks.org)
- [`ShadowsocksR`](https://github.com/shadowsocksrr/shadowsocksr-libev)
- [`WireGuard`](https://www.wireguard.com)
- [`Trojan`](https://trojan-gfw.github.io/trojan)
- [`VMess`](https://www.v2fly.org)
- [`VLESS`](https://xtls.github.io)
### Others
- UDP NAT FullCone (Limited by your server)
- .NET 6.0 x64
## Sponsor
## License
Netch is licensed under the [GPLv3](https://raw.githubusercontent.com/netchx/netch/main/LICENSE) license
================================================
FILE: Redirector/.gitignore
================================================
/bin
/obj
/*.vcxproj.user
================================================
FILE: Redirector/.must_build
================================================
1
================================================
FILE: Redirector/Based.cpp
================================================
#include "Based.h"
bool filterLoopback = false;
bool filterIntranet = false;
bool filterParent = false;
bool filterICMP = true;
bool filterTCP = true;
bool filterUDP = true;
bool filterDNS = true;
DWORD icmping = 0;
bool dnsOnly = false;
bool dnsProx = true;
string dnsHost = "1.1.1.1";
USHORT dnsPort = 53;
wstring tgtHost = L"127.0.0.1";
wstring tgtPort = L"1080";
string tgtUsername = "";
string tgtPassword = "";
vector bypassList;
vector handleList;
================================================
FILE: Redirector/Based.h
================================================
#pragma once
#ifndef BASED_H
#define BASED_H
#include
#include