- Notifications
You must be signed in to change notification settings - Fork0
A DNS server and SNI proxy server help proxy the HTTP and packet over TLS traffic just with config DNS on the client-side.
License
MarkopDev/MarkopProxy
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
A DNS server and SNI proxy server help proxy the HTTP and packet over TLS traffic just with config DNS on the client-side.
SNI Proxy Server proxy incoming traffic based on the hostname contained in the TCP session.For example, in HTTPv1 protocol with a Host header to determine the actual destination of packets and TLS protocol with the help of server name extension, the proxy server determines the actual destination.
This flow describe how client send a Http request to example.com server
- Client setup Markop DNS server as OS default DNS server
- Client OS sends DNS query to Markop DNS server to resolve example.com into IPv4
- Markop DNS server checks its white list record and resolve example.com into Markop Proxy server IP
- OS sends a Http request to Markop Proxy server IP5.1. Markop Proxy server parse and analyze the data to extract request hostname(example.com)5.2. Markop Proxy server sends data into hostname(example.com)
- Example.com server sends response to Markop Proxy server
- Markop Proxy server sends response to client OS
Proxy HTTPS traffic to web server created byserve
Serve Command:
$ serve -s build --ssl-cert cert.pem --ssl-key key.pem --ssl-pass pass.key -l 443
Result:
[+] Start Stress Test[+] Success: 1000 Failed: 0[+] AVG: 580.708 MAX: 937 MIN: 82[+] Success: 1000 Failed: 0[+] AVG: 209.4 MAX: 352 MIN: 119[+] Success: 1000 Failed: 0[+] AVG: 237.525 MAX: 346 MIN: 126[+] Success: 1000 Failed: 0[+] AVG: 292.515 MAX: 426 MIN: 190[+] Success: 1000 Failed: 0[+] AVG: 198.685 MAX: 268 MIN: 142[+] Success: 1000 Failed: 0[+] AVG: 176.014 MAX: 224 MIN: 63[+] Success: 1000 Failed: 0[+] AVG: 198.973 MAX: 249 MIN: 163[+] Success: 1000 Failed: 0[+] AVG: 206.086 MAX: 272 MIN: 161[+] Success: 1000 Failed: 0[+] AVG: 181.266 MAX: 267 MIN: 101[+] Success: 1000 Failed: 0[+] AVG: 178.903 MAX: 266 MIN: 98[+] Stress Test Finished
- Support HTTPv1, TLS protocols
- Multiple listening sockets
- Support SO_REUSEPORK kernel feature
$ git clone https://github.com/MarkopDev/MarkopProxy$cd MarkopProxy/MarkopProxy$ dotnet publish -c Release -o build$ dotnet publish -c Release -o build
$ docker-compose up -d
or
$ docker build -t markop-proxy.$ docker run -d markop-proxyIf you're interested in contributing to this project, first of all, We would like to extend my heartfelt gratitude.
Please feel free to reach out to us if you need help.
MIT
About
A DNS server and SNI proxy server help proxy the HTTP and packet over TLS traffic just with config DNS on the client-side.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.