--- tags: - TCPcategories: - Network - Linuxdate:created: 2020-08-20# updated: 2024-01-19---
TCP Over DNS to bypass campus network billing¶
1. Requirements- VPS -> Take CentOS as an example-> IP is represented by 123.123.123.123- Domain name -> represented by domain.com-> Subdomain names are represented by tunnels¶
2. Set up domain name resolution|host record|Record|value|¶
| ---- | ----- | ----- | |NS|d2t|tunnel.domain.com| |A|tunnel|123.123.123.123 |
3. Disguise program (iodine)### Server¶
(1). Install iodine```¶
git clone https://github.com/yarrick/iodine.git cd iodine make make install ``` - Compilation and installation require GCC environment
(2). Run iodineiodined -f -c -P password 10.0.0.1 d2t.domain.com¶
- Note:> -f runs in the foreground> -c disables checking the client IP address of all incoming requests; by default, requests from non-matching IPs will be rejected.> -P sets authentication password> 10.0.0.1 is a reserved address
ClientThe client is Ubuntu20.04 LTS in WSL2#### (1). Install iodinesudo apt-get install iodine¶
(2). Run iodinesudo iodine -f -P password d2t.domain.com¶
(3). Open a new Terminal, connect to the server through SSH, and use 9999 as the forwarding port.ssh USER@10.0.0.1 -p1234 -D 9999¶
- Note:> USER represents the username of the VPS> 1234 represents the port of SSH on the VPS
Use a proxy to access the Internet¶
(1). Install the plug-in SwitchyOmega in the browser¶
(2). Create a new Proxy Profile|Protocol|Server|Port|¶
|--------|------ |----| |Socks5|localhost|9999|
(3). Click on SwitchyOmega in the upper right corner of the browser to select the proxy created in the previous step to access the Internet.¶
REF¶
[1]. https://fanqxu.github.io/2019/03/20/Bypass-campusNet/
[2].OSI model