An open API service indexing awesome lists of open source software.

https://github.com/liulilittle/skylakenat

Three-layer Virtual NAT address conversion (experimental sub-project of SupersocksR)
https://github.com/liulilittle/skylakenat

c cpp cs csharp icmp ipv4 nat openvpn-tap-windows pcap proxy route tcp tun udp win32

Last synced: 12 months ago
JSON representation

Three-layer Virtual NAT address conversion (experimental sub-project of SupersocksR)

Awesome Lists containing this project

README

          

# SkylakeNAT


Build SkylakeNAT-cli


-------------------------------------------------------------------------------------


DevTools choosable Visual C/C++ 2015, 2017, 2019...(IA32-x86)




vcpkg (https://github.com/Microsoft/vcpkg/)


References:


1、boost and boost::asio-x86


2、openssl-x86


3、TAP-Windows or TAP-Windows6 (openvpn)

Build SupersocksR * (experiment)


-------------------------------------------------------------------------------------
Nuget


References: >= Microsoft .NET Framework 4.5、Microsoft Visual C++ 2010 x86 Runtime(CRT)


1、Pcap.Net


2、OpenSSL.Net


3、WinPcap or WinPcap for Win10

Route
-------------------------------------------------------------------------------------
1、The default gateway between the vNAT and the TAP device is 10.8.0.0


2、If you need to run all (TCP/IP, ICMP, UDP/IP) protocol data through SkylakeNAT then
you need to configure the following route (CMD/cli interface).


> WIN + R (runas administrator) -> cmd


route add 0.0.0.0 mask 0.0.0.0 10.8.0.0


route add 0.0.0.0 mask 128.0.0.0 10.8.0.0


route add 128.0.0.0 mask 128.0.0.0 10.8.0.0




WinAPI operation route can be referred to https://github.com/liulilittle/SkylakeNAT/blob/master/SupersocksR/Net/Routing/RouteTableManager.cs




3、If you're only going to SkylakeNAT for an IP or IP segment, you can configure SkylakeNAT as follows


    1、route add 172.8.8.8 mask 255.255.255.255 10.8.0.0 (172.8.8.8 ~ 172.8.8.8)

    2、route add 198.18.0.0 mask 255.254.0.0 10.8.0.0 (198.18.0.0 ~ 198.19.255.255)

Usage
-------------------------------------------------------------------------------------
Must run the program as Administrator


Specify that the IP that the SupersocksR listens on must be an "Ethernet physical network card" (typically a RTL[Realtek] network card) that can access input or output traffic




1:SupersocksR 192.168.0.104 7521 yy523o! 25


2:SkylakeNAT --server=192.168.0.104 --port=7521 --key=yy520o! --subtract=25 --max-concurrent=8