Skip to content
/ vless-cf Public template
forked from 3Kmfi6HP/EDtunnel

Use Cloudflare pages and worker serverless to implement VLESS protocol

License

Notifications You must be signed in to change notification settings

Vauth/vless-cf

 
 

Repository files navigation

EDtunnel

edgetunnel

GitHub Repository for https://github.com/zizifn/edgetunnel

ask question and cloudflare ips: https://t.me/edtunnel

Repository

available branches and explain

Branch Name Description
remote-socks5 Branch for remote SOCKS5 proxy pool used implementation
socks5 Branch for SOCKS5 proxyIP implementation
vless Branch for outbound VLESS protocol implementation
vless2 Branch for alternative outbound VLESS protocol implementation
code1 Branch for code1 feature development
code2 Branch for code2 alternative feature development
dns Branch for DNS alternative related development
main Main branch for the project
pages New version for deployment on Cloudflare Pages

Deploy in pages.dev

  1. See YouTube Video:

    https://www.youtube.com/watch?v=8I-yTNHB0aw

  2. Clone this repository deploy in cloudflare pages.

Deploy in worker.dev

  1. Copy _worker.js code from here.

  2. Alternatively, you can click the button below to deploy directly.

    Deploy to Cloudflare Workers

Lazy to deploy

aHR0cHM6Ly9vc3MudjJyYXlzZS5jb20vcHJveGllcy9kYXRhLzIwMjMtMDctMzAvRnJFS1lvQS50eHQ= (free clash.meta subscribe config)

DoH with Cloudflare

  1. Follow the https://github.com/serverless-dns/serverless-dns .
  2. Replace the dns url with dohURL value in _worker.js .

UUID Setting (Optional)

  1. When deploy in cloudflare pages, you can set uuid in wrangler.toml file. variable name is UUID. wrangler.toml file is also supported. (recommended) in case deploy in webpages, you can not set uuid in wrangler.toml file.

  2. When deploy in worker.dev, you can set uuid in _worker.js file. variable name is userID. wrangler.toml file is also supported. (recommended) in case deploy in webpages, you can not set uuid in wrangler.toml file. in this case, you can also set uuid in UUID enviroment variable.

Note: UUID is the uuid you want to set. pages.dev and worker.dev all of them method supported, but depend on your deploy method.

UUID Setting Example

  1. single uuid environment variable

    UUID = "uuid here your want to set"
    
  2. multiple uuid environment variable

    UUID = "uuid1,uuid2,uuid3"
    

    note: uuid1, uuid2, uuid3 are separated by commas,. when you set multiple uuid, you can use https://edtunnel.pages.dev/uuid1 to get the clash config and vless:// link.

subscribe vless:// link (Optional)

  1. visit https://edtunnel.pages.dev/uuid your set to get the subscribe link.

  2. visit https://edtunnel.pages.dev/sub/uuid your set to get the subscribe content with uuid your set path.

    note: uuid your set is the uuid you set in UUID enviroment or wrangler.toml, _worker.js file. when you set multiple uuid, you can use https://edtunnel.pages.dev/sub/uuid1 to get the subscribe content with uuid1 path.(only support first uuid in multiple uuid set)

  3. visit https://edtunnel.pages.dev/sub/uuid your set/?format=clash to get the subscribe content with uuid your set path and clash format. content will return with base64 encode.

    note: uuid your set is the uuid you set in UUID enviroment or wrangler.toml, _worker.js file. when you set multiple uuid, you can will use https://edtunnel.pages.dev/sub/uuid1/?format=clash to get the subscribe content with uuid1 path and clash format.(only support first uuid in multiple uuid set)

subscribe Cloudflare bestip(pure ip) link

  1. visit https://edtunnel.pages.dev/bestip/uuid your set to get subscribe info.

  2. cpoy subscribe url link https://edtunnel.pages.dev/bestip/uuid your set to any clients(clash/v2rayN/v2rayNG) you want to use.

  3. done. if have any questions please join @edtunnel

multiple port support (Optional)

For a list of Cloudflare supported ports, please refer to the official documentation.

By default, the port is 80 and 443. If you want to add more ports, you can use the following ports:

80, 8080, 8880, 2052, 2086, 2095, 443, 8443, 2053, 2096, 2087, 2083
http port: 80, 8080, 8880, 2052, 2086, 2095
https port: 443, 8443, 2053, 2096, 2087, 2083

if you deploy in cloudflare pages, https port is not supported. Simply add multiple ports node drictly use subscribe link, subscribe content will return all Cloudflare supported ports.

proxyIP (Optional)

  1. When deploy in cloudflare pages, you can set proxyIP in wrangler.toml file. variable name is PROXYIP.

  2. When deploy in worker.dev, you can set proxyIP in _worker.js file. variable name is proxyIP.

note: proxyIP is the ip or domain you want to set. this means that the proxyIP is used to route traffic through a proxy rather than directly to a website that is using Cloudflare's (CDN). if you don't set this variable, connection to the Cloudflare IP will be cancelled (or blocked)...

resons: Outbound TCP sockets to Cloudflare IP ranges are temporarily blocked, please refer to the tcp-sockets documentation

Usage

frist, open your pages.dev domain https://edtunnel.pages.dev/ in your browser, then you can see the following page: The path /uuid your seetting to get the clash config and vless:// link.

Star History

Star History Chart

About

Use Cloudflare pages and worker serverless to implement VLESS protocol

Topics

Resources

License

Stars

Watchers

Forks

Languages

  • JavaScript 100.0%