Nodes ko - FrankoonG/hy2scale GitHub Wiki

๐ŸŒ English | ไธญๆ–‡ | ํ•œ๊ตญ์–ด

๋…ธ๋“œ

๋…ธ๋“œ๋Š” HY2 SCALE ๋ฉ”์‹œ์˜ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ๊ฐ ๋…ธ๋“œ๋Š” Hysteria 2 QUIC ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋‹ค๋ฅธ ๋…ธ๋“œ์™€ ํ”ผ์–ด๋กœ ์—ฐ๊ฒฐ๋˜์–ด ํƒˆ์ค‘์•™ P2P ํ† ํด๋กœ์ง€๋ฅผ ํ˜•์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋…

๋…ธ๋“œ๋ž€?

HY2 SCALE์„ ์‹คํ–‰ํ•˜๋Š” ๋ชจ๋“  ๊ธฐ๊ธฐ์ž…๋‹ˆ๋‹ค. ๊ฐ ๋…ธ๋“œ๋Š” ๋‹ค์Œ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค:

  • ์ž๋™ ์ƒ์„ฑ๋œ ๋…ธ๋“œ ID (8์ž๋ฆฌ 16์ง„์ˆ˜)
  • ์„ค์ • ๊ฐ€๋Šฅํ•œ ํ‘œ์‹œ ์ด๋ฆ„ (์˜ˆ: sg-home)
  • ๊ธฐ๋ณธ 5565 ํฌํŠธ์—์„œ ๋ฆฌ์Šจํ•˜๋Š” Hysteria 2 QUIC ์„œ๋ฒ„
  • ์ถœ๊ตฌ ๋…ธ๋“œ ํ”Œ๋ž˜๊ทธ โ€” ์„ค์ •ํ•˜๋ฉด ํ”ผ์–ด๊ฐ€ ์ด ๋…ธ๋“œ๋ฅผ ํ†ตํ•ด ์ธํ„ฐ๋„ท์œผ๋กœ ํŠธ๋ž˜ํ”ฝ์„ ๋ผ์šฐํŒ…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
  • ์„ ํƒ์  TUN ๊ธฐ๋Šฅ โ€” ๋ผ์šฐํŒ… ๊ทœ์น™๊ณผ TUN ๋ชจ๋“œ VPN ํด๋ผ์ด์–ธํŠธ๋ฅผ ์œ„ํ•œ Raw IP ํŒจํ‚ท ํฌ์›Œ๋”ฉ

๋…ธ๋“œ๋Š” ๊ณต์ธ IP๋ฅผ ๊ฐ€์ง„ ํด๋ผ์šฐ๋“œ VPS, NAT ๋’ค์˜ ํ™ˆ ์„œ๋ฒ„, NAS, ๋˜๋Š” .ipkg ๋ฒˆ๋“ค์„ ํ†ตํ•œ iKuai v4 ๋ผ์šฐํ„ฐ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

P2P ํ† ํด๋กœ์ง€

๋…ธ๋“œ๋Š” QUIC ํ„ฐ๋„์„ ํ†ตํ•ด ์„œ๋กœ ์ง์ ‘ ์—ฐ๊ฒฐ๋˜๋ฉฐ, ์ค‘์•™ ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋…ธ๋“œ โ€” ๊ทธ๋ž˜ํ”„ ๋ทฐ

์œ„ ์˜ˆ์‹œ๋Š” ์‹ฑ๊ฐ€ํฌ๋ฅด ํ™ˆ ๋…ธ๋“œ (sg-home)๊ฐ€ ์—ด ๊ฐœ์˜ ์›๊ฒฉ ๋…ธ๋“œ์™€ ํ”ผ์–ด๋ง ์ค‘์ธ ๋ชจ์Šต์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๊ทธ์ค‘ ์„ธ ๊ฐœ์˜ ์›๊ฒฉ ํ”ผ์–ด๋Š” ์ค‘์ฒฉ ๊ฒ€์ƒ‰์„ ํ†ตํ•ด ํ•œ ๊ณ„์ธต ๋” ๊นŠ์€ ์„œ๋ธŒ ํ”ผ์–ด๋ฅผ ๋…ธ์ถœํ•ฉ๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ ๋ฐฉํ–ฅ

  • ์•„์›ƒ๋ฐ”์šด๋“œ โ€” ๋‚ด๊ฐ€ ํ”ผ์–ด์— ๋Œ€ํ•ด QUIC ์—ฐ๊ฒฐ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค (ํ”ผ์–ด์˜ ์ฃผ์†Œ + ์„œ๋ฒ„ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค).
  • ์ธ๋ฐ”์šด๋“œ โ€” ํ”ผ์–ด๊ฐ€ ๋‚˜์—๊ฒŒ QUIC ์—ฐ๊ฒฐ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ๋œ ํ›„์—๋Š” ์–‘์ชฝ ๋ฐฉํ–ฅ์ด ๊ธฐ๋Šฅ์ ์œผ๋กœ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๋ฐฉํ–ฅ์€ ๋‹จ์ง€ ๋ˆ„๊ฐ€ ๋ˆ„๊ตฌ์˜ ์ฃผ์†Œ๋ฅผ ์•Œ์•„์•ผ ํ•˜๋Š”์ง€๋งŒ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

๋‘ ๊ฐ€์ง€ ๋ทฐ, ํ•˜๋‚˜์˜ ํ† ํด๋กœ์ง€

๋…ธ๋“œ ํŽ˜์ด์ง€์—๋Š” ๋™๋“ฑํ•œ ๋‘ ๊ฐ€์ง€ ํ‘œํ˜„์ด ์žˆ์œผ๋ฉฐ, ํ† ํด๋กœ์ง€ ์นด๋“œ ์ƒ๋‹จ์˜ ํˆด๋ฐ” ํƒญ์œผ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

๊ทธ๋ž˜ํ”„ ๋ทฐ (๊ธฐ๋ณธ)

  • ํŒฌ, ํœ  ์คŒ, ํ•€์น˜ ์คŒ (๋ชจ๋ฐ”์ผ / ํŠธ๋ž™ํŒจ๋“œ)์„ ์ง€์›ํ•˜๋Š” ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ SVG ์บ”๋ฒ„์Šค
  • ๋ชจ๋“  ์—ฃ์ง€์— ์™•๋ณต ์ง€์—ฐ ์‹œ๊ฐ„ (๋…น์ƒ‰ โ‰ค 100 ms, ํ™ฉ์ƒ‰ โ‰ค 200 ms, ๊ทธ ์™ธ ๋นจ๊ฐ„์ƒ‰)๊ณผ ํ˜„์žฌ ์ฒ˜๋ฆฌ๋Ÿ‰์ด ๋ผ๋ฒจ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค
  • ๋…ธ๋“œ๋ฅผ ๋“œ๋ž˜๊ทธํ•ด ์žฌ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ ˆ์ด์•„์›ƒ์€ ์„œ๋ฒ„์— ์ €์žฅ๋˜์–ด ๋กœ๊ทธ์ธ๋œ ๋‹ค๋ฅธ ๋ชจ๋“  ์„ธ์…˜์— SSE๋กœ ๋™๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค
  • ๋ชฉ์ ์ง€ ์  (์ž๊ธฐ ์ž์‹ ์˜ self ์  ํฌํ•จ)์„ ํด๋ฆญํ•˜๋ฉด ์ „์ฒด ๋ฆด๋ ˆ์ด ๊ฒฝ๋กœ๊ฐ€ ๊ฐ•์กฐ๋˜๊ณ  ํ•˜๋‹จ์— ๋ธŒ๋ ˆ๋“œํฌ๋Ÿผ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค โ€” ๋ธŒ๋ ˆ๋“œํฌ๋Ÿผ์˜ ๊ฐ ๋น„-self ํ™‰์€ ํด๋ฆญ ๊ฐ€๋Šฅํ•œ ๋งํฌ๋กœ, ํ•ด๋‹น prefix์˜ ์›๊ฒฉ ๋ทฐ๋ฅผ ์—ฝ๋‹ˆ๋‹ค (๋ฆฌ์ŠคํŠธ ๋ทฐ์˜ ๋…ธ๋“œ ๋งํฌ์™€ ๋™์ผํ•œ ๋‹จ์ถ•ํ‚ค).
  • ๋„ค์ดํ‹ฐ๋ธŒ ํ”ผ์–ด๋Š” ๋…ธ๋ž€ ์ , ์˜คํ”„๋ผ์ธ ํ”ผ์–ด๋Š” ์—ฐํ•œ ๋นจ๊ฐ„ ์ ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋„ค์ดํ‹ฐ๋ธŒ ํ”ผ์–ด์— ๋‹ฟ๋Š” ์—ฃ์ง€๋Š” ํ‰์ƒ์‹œ ์—ฐ๋…ธ๋ž‘์ด๋ฉฐ ์„ ํƒ ์‹œ ์ฑ„๋„๊ฐ€ ๋†’์•„์ ธ ๊ฒฝ๋กœ๊ฐ€ ์‹œ๊ฐ์ ์œผ๋กœ ํ•œ ๊ทธ๋ฃน์œผ๋กœ ๋ณด์ด๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
  • ํˆด๋ฐ” ์ปจํŠธ๋กค: ๋ทฐ ๋ฆฌ์…‹, ๋ ˆ์ด์•„์›ƒ ๋ฆฌ์…‹ (ํ™•์ธ ํ›„), ๊ฒฉ์ž ์Šค๋ƒ…

๋ฆฌ์ŠคํŠธ / ํŠธ๋ฆฌ ๋ทฐ

  • ๋“ค์—ฌ์“ฐ๊ธฐ์™€ via X ํžŒํŠธ๋กœ ๊นŠ์ด๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •๋ ฌ๋œ ํ”ผ์–ด ํŠธ๋ฆฌ
  • ์ปฌ๋Ÿผ: ์ฒดํฌ๋ฐ•์Šค, ์ง€์—ฐ ์‹œ๊ฐ„, ๋ฐฉํ–ฅ ๋ฐฐ์ง€, ๋…ธ๋“œ ์ด๋ฆ„ + ์ฃผ์†Œ, ํŠธ๋ž˜ํ”ฝ ์—…๋กœ๋“œ / ๋‹ค์šด๋กœ๋“œ โ€” ํŽธ์ง‘์€ ํ–‰๋ณ„ ์ž‘์€ ์•„์ด์ฝ˜์ด ์•„๋‹Œ ์„ ํƒ ์ƒํƒœ๋กœ ๊ตฌ๋™๋ฉ๋‹ˆ๋‹ค (์•„๋ž˜ ์ฐธ๊ณ )
  • ์ฒดํฌ๋ฐ•์Šค ์…€ ์ „์ฒด ์˜์—ญ (ํŒจ๋”ฉ ํฌํ•จ)์ด ๊ทธ ํ–‰ ์ฒดํฌ๋ฐ•์Šค์˜ ํด๋ฆญ ์˜์—ญ์ด๋ฉฐ, ํ–‰ ๋ณธ๋ฌธ ํด๋ฆญ์€ ๋‹จ๋… ์„ ํƒ (๋‹จ์ผ ํ–‰ ๊ต์ฒด)์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค

๋…ธ๋“œ โ€” ๋ฆฌ์ŠคํŠธ ๋ทฐ

ํ”ผ์–ด ์ถ”๊ฐ€ (์•„์›ƒ๋ฐ”์šด๋“œ)

+ Add Node ๋ฒ„ํŠผ์€ ๋‘ ๊ฐ€์ง€ ์ธํ„ฐ๋ž™์…˜์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค:

  • ํด๋ฆญ โ€” ์•„๋ž˜์˜ ์ˆ˜๋™ ํผ์„ ์—ฝ๋‹ˆ๋‹ค.
  • ๊ธธ๊ฒŒ ๋ˆ„๋ฅด๊ธฐ (โ‰ฅ 600 ms) โ€” hysteria2:// URL์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ ๋‹ค์ด์–ผ๋กœ๊ทธ๋ฅผ ์—ฝ๋‹ˆ๋‹ค. hysteria2://[auth@]host[:port][?params]#name (๋˜๋Š” hy2:// ๋ณ„์นญ)์„ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. URL์€ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํŒŒ์‹ฑ๋˜๋ฉฐ (host / port / password / SNI / insecure / mport / up / down / fastopen / pinSHA256), ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋กœ ๊ฐ€์ ธ์˜ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. obfs / obfs-password๋Š” ์กฐ์šฉํžˆ ์‚ผํ‚ค์ง€ ์•Š๊ณ  ใ€Œ๋ฌด์‹œ๋˜๋Š” ํ•„๋“œใ€๋กœ ๋ช…์‹œ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์ˆ˜๋™ ํผ ํ•„๋“œ:

ํ•„๋“œ ์„ค๋ช…
๋…ธ๋“œ ์ด๋ฆ„ (Node Name) ์„ ํƒ ์‚ฌํ•ญ. ๋น„์›Œ๋‘๋ฉด ์ฒซ ๋ฒˆ์งธ ์ฃผ์†Œ๋กœ ํด๋ฐฑ๋ฉ๋‹ˆ๋‹ค. ์˜จ๋ผ์ธ hy2scale ํ”ผ์–ด๋ฅผ ํŽธ์ง‘ํ•  ๋•Œ ์ž ๊น๋‹ˆ๋‹ค (๋ผ์ด๋ธŒ QUIC ์„ธ์…˜์˜ ์ด๋ฆ„์„ ๋ฐ”๊พธ๋ฉด ํ‚ค ์ƒํƒœ๊ฐ€ ๊ณ ์•„๊ฐ€ ๋˜๋ฏ€๋กœ). ๋„ค์ดํ‹ฐ๋ธŒ ํ”ผ์–ด์™€ ์˜คํ”„๋ผ์ธ ํ•ญ๋ชฉ์€ ํ•ญ์ƒ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. /, ๊ณต๋ฐฑ, ์ œ์–ด ๋ฌธ์ž๋Š” ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค.
์ฃผ์†Œ (Address(es)) ํ”ผ์–ด์˜ host:port โ€” ํ•˜๋‚˜ ๋˜๋Š” ๋‹ค์ค‘ IP ์ง‘๊ณ„๋ฅผ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๊ฐœ ์ž…๋ ฅ. ํฌํŠธ ํ•„๋“œ๋Š” hy2 ํฌํŠธ ํ˜ธํ•‘์„ ์œ„ํ•ด ์‰ผํ‘œ / ๋ฒ”์œ„ ๋ฆฌ์ŠคํŠธ (5000-6000, 5000,5001,5002)๋„ ๋ฐ›์Šต๋‹ˆ๋‹ค.
์—ฐ๊ฒฐ ๋ชจ๋“œ Direct (๋‹จ์ผ ์ฃผ์†Œ), Quality (์ ์‘ํ˜• ํŽ˜์ผ์˜ค๋ฒ„), Aggregate (์ฃผ์†Œ ๊ฐ„ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ)
๋น„๋ฐ€๋ฒˆํ˜ธ ํ”ผ์–ด์˜ Hysteria 2 ์„œ๋ฒ„ ๋น„๋ฐ€๋ฒˆํ˜ธ
Fast Open TCP-Fast-Open ์Šคํƒ€์ผ์˜ 0-RTT ์š”์ฒญ ์ตœ์ ํ™” (ํ† ๊ธ€)
Brutal Hysteria 2 brutal ํ˜ผ์žก ์ œ์–ด (ํ† ๊ธ€, Fast Open ์˜ค๋ฅธ์ชฝ์— ๋ถ™์Œ). ์ผœ๋ฉด ์•„๋ž˜์— Upload / Download Mbps ์ž…๋ ฅ์ด ๋‚˜ํƒ€๋‚˜๊ณ , ๋„๋ฉด ์ž…๋ ฅ์ด ์ˆจ๊ฒจ์ง€๋ฉด์„œ ์ด์ „ ๊ฐ’์€ ๋น„์›Œ์ ธ ์˜๋„์น˜ ์•Š๊ฒŒ ๋ณด๋‚ด์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
BBR Profile Standard / Conservative / Aggressive โ€” Brutal๊ณผ ๋…๋ฆฝ์ ์œผ๋กœ ๋™์ž‘ํ•˜๋ฏ€๋กœ ํ† ๊ธ€ ์‹œ ์ปฌ๋Ÿผ์ด ๋‹ค์‹œ ํํŠธ๋Ÿฌ์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค
SNI TLS SNI (๋ณดํ†ต ํ˜ธ์ŠคํŠธ๋ช…)
Insecure TLS ์ธ์ฆ์„œ ๊ฒ€์ฆ ๊ฑด๋„ˆ๋›ฐ๊ธฐ
CA ํ”ผ์–ด ์ธ์ฆ์„œ ๊ฒ€์ฆ์„ ์œ„ํ•œ PEM ์ธ์ฝ”๋”ฉ CA (์„ ํƒ)

Connect (์ƒ์„ฑ) ๋˜๋Š” Save (ํŽธ์ง‘)์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ํŽธ์ง‘ ๋ชจ๋“œ์—์„œ๋Š” Cancel๊ณผ Save ์‚ฌ์ด์— ์ถ”๊ฐ€๋กœ Export URL ๋ฒ„ํŠผ์ด ํ‘œ์‹œ๋˜๋ฉฐ, ์ด ํ”ผ์–ด์˜ hysteria2://... ๊ณต์œ  URL์„ ํด๋ฆฝ๋ณด๋“œ๋กœ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค (๋‹ค์ค‘ ์ฃผ์†Œ ํ”ผ์–ด๋Š” ์ฒซ ์ฃผ์†Œ๋กœ ํด๋ฐฑ โ€” URL ํ‘œ์ค€์— ๋‹ค์ค‘ ์ฃผ์†Œ ์Šฌ๋กฏ์ด ์—†์Šต๋‹ˆ๋‹ค). ํด๋ฆฝ๋ณด๋“œ ํ—ฌํผ๋Š” HTTP-over-IP์—์„œ ์ˆจ๊ฒจ์ง„ textarea + execCommand('copy')๋กœ ํด๋ฐฑํ•˜๋ฏ€๋กœ, IP๋กœ๋งŒ ๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๊ด€๋ฆฌ ๋…ธ๋“œ๋„ ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

ํ”ผ์–ด ์ˆ˜์‹  (์ธ๋ฐ”์šด๋“œ)

์ธ๋ฐ”์šด๋“œ ์—ฐ๊ฒฐ์„ ๋ฐ›์œผ๋ ค๋ฉด ๋…ธ๋“œ์˜ ์ฃผ์†Œ + ์„œ๋ฒ„ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ”ผ์–ด์—๊ฒŒ ๊ณต์œ ํ•˜์„ธ์š”. ์ƒ๋Œ€๊ฐ€ ์ž์‹ ์˜ ์ชฝ์—์„œ ์•„์›ƒ๋ฐ”์šด๋“œ ํ”ผ์–ด๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์„œ๋ฒ„ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” Edit Self ๋ชจ๋‹ฌ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์ž์‹ ์˜ ๋…ธ๋“œ๋ฅผ ์„ ํƒํ•œ ๋’ค Edit ๋ฒ„ํŠผ์„ ์‚ฌ์šฉ).

์„ ํƒ ๋ฐ ํŽธ์ง‘

๋…ธ๋“œ ํŽ˜์ด์ง€ (๊ทธ๋ฆฌ๊ณ  HY2 SCALE์˜ ๋ชจ๋“  ๋‹ค๋ฅธ ๋ฆฌ์ŠคํŠธ ํŽ˜์ด์ง€)๋Š” ํ•˜๋‚˜์˜ ใ€Œ๋จผ์ € ์„ ํƒ, ๊ทธ๋‹ค์Œ ์ž‘์—…ใ€ ํŒจํ„ด์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค:

  • ํ–‰ ๋ณธ๋ฌธ ์–ด๋””๋“  ํด๋ฆญํ•˜๋ฉด (๋˜๋Š” ๊ทธ๋ž˜ํ”„์˜ ์ ์„ ํด๋ฆญํ•˜๋ฉด) ๊ทธ ๋…ธ๋“œ๋ฅผ ๋‹จ์ผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค โ€” ์ž์‹ ์˜ self ๋…ธ๋“œ๋„ ํฌํ•จ๋˜๋ฉฐ, ์ด ๊ฒฝ์šฐ Edit๋Š” Edit Local Node ๋ชจ๋‹ฌ๋กœ ๋ผ์šฐํŒ…๋ฉ๋‹ˆ๋‹ค.
  • ์•ž์ชฝ ์ฒดํฌ๋ฐ•์Šค ์…€์„ ํด๋ฆญํ•˜๋ฉด (์ž‘์€ ์ž…๋ ฅ์ด ์•„๋‹ˆ๋ผ ํŒจ๋”ฉ์ด ์ ์šฉ๋œ ์˜์—ญ ์–ด๋””๋“ ) ๋‹ค์ค‘ ์„ ํƒ ๋ชจ๋“œ๋กœ ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค. ์ฒดํฌ๋ฐ•์Šค๋Š” ๋ˆ„์ ์‹์ž…๋‹ˆ๋‹ค.
  • ์ •ํ™•ํžˆ ํ•œ ํ–‰์ด ์„ ํƒ๋˜๋ฉด ํ† ํด๋กœ์ง€ ์นด๋“œ ์šฐ์ƒ๋‹จ, Import์™€ + Add Node ์‚ฌ์ด์— ๋…น์ƒ‰ Edit ๋ฒ„ํŠผ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ์•„๋ฌด๊ฒƒ๋„ ์„ ํƒ๋˜์ง€ ์•Š์•˜๊ฑฐ๋‚˜ ๋‘ ํ–‰ ์ด์ƒ์ด ์„ ํƒ๋œ ๊ฒฝ์šฐ์—๋Š” ์ˆจ๊ฒจ์ง€๋ฉฐ, ๋‹จ์ผ ์„ ํƒ์ด ์ค‘์ฒฉ๋œ ์„œ๋ธŒ ํ”ผ์–ด (๊ทธ ์„ค์ •์€ ๋ถ€๋ชจ ๋…ธ๋“œ์— ์žˆ๊ณ  ์ด ํŽ˜์ด์ง€์—์„œ ํŽธ์ง‘ ๋ถˆ๊ฐ€)์ผ ๋•Œ๋„ ์ˆจ๊ฒจ์ง‘๋‹ˆ๋‹ค.
  • ํ† ํด๋กœ์ง€ ์นด๋“œ ๋ณธ๋ฌธ ๋ฐ”๊นฅ์˜ ๋นˆ ํด๋ฆญ โ€” ํŽ˜์ด์ง€ ํ—ค๋”ฉ, ์‚ฌ์ด๋“œ๋ฐ”, ์นด๋“œ ์‚ฌ์ด ๊ฐ„๊ฒฉ, ํ† ํด๋กœ์ง€ ์นด๋“œ ์ž์ฒด์˜ ํ—ค๋” ์ŠคํŠธ๋ฆฝ โ€” ์€ ๋‹จ์ผ ํ–‰ ์„ ํƒ์„ ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์ค‘ ์„ ํƒ์€ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค (๋ฒ„ํŠผ / ์ž…๋ ฅ / ์—ด๋ฆฐ ๋ชจ๋‹ฌ ์œ„ ํด๋ฆญ์€ ์ ˆ๋Œ€ ์„ ํƒ์„ ํ’€์ง€ ์•Š์Šต๋‹ˆ๋‹ค).
  • ์ผ๊ด„ ์ž‘์—… (ํ™œ์„ฑํ™” / ๋น„ํ™œ์„ฑํ™” / ์ค‘์ฒฉ / ์ค‘์ฒฉ ํ•ด์ œ / ์‚ญ์ œ)์€ ํ•œ ํ–‰ ์ด์ƒ์ด ์„ ํƒ๋˜๋Š” ์ฆ‰์‹œ Edit ๋ฒ„ํŠผ ์™ผ์ชฝ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • self ํ–‰์€ ํŠน๋ณ„ ์ฒ˜๋ฆฌ: ์ค‘์ฒฉ ํ† ๊ธ€์ด ์ˆจ๊ฒจ์ง€๊ณ  (self์—๋Š” ์ค‘์ฒฉ ๊ฐœ๋…์ด ์—†์Œ), ํ™œ์„ฑํ™” / ๋น„ํ™œ์„ฑํ™”๋Š” ๋Œ€์นญ์„ ์œ„ํ•ด ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜ํ”„ ๋ทฐ์—์„œ ์ ์„ ์„ ํƒํ•˜๋ฉด ๋™์ผํ•œ ์šฐ์ƒ๋‹จ Edit ๋ฒ„ํŠผ์ด ๋ถ€๊ฐ๋ฉ๋‹ˆ๋‹ค โ€” ๋ฆฌ์ŠคํŠธ์™€ ๊ทธ๋ž˜ํ”„๊ฐ€ ๋‹จ์ผ ํŽธ์ง‘ ์ง„์ž…์ ์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.

์ค‘์ฒฉ ๊ฒ€์ƒ‰

์ค‘์ฒฉ ๊ฒ€์ƒ‰์„ ์‚ฌ์šฉํ•˜๋ฉด ํ”ผ์–ด์˜ ํ”ผ์–ด๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค โ€” ํ•œ ํ™‰๋‹น ๋ฉ”์‹œ ํ•œ ๋‹จ๊ณ„ ๋” ๊นŠ์ด.

๊ฐ ํ™‰์€ ํ•ด๋‹น ํ”ผ์–ด์— ๋Œ€ํ•œ ๋กœ์ปฌ nested ํ”Œ๋ž˜๊ทธ๋กœ ๊ฒŒ์ดํŒ…๋ฉ๋‹ˆ๋‹ค:

  • sg-home์ด us์— ์ค‘์ฒฉ์„ ํ—ˆ์šฉ โ†’ us์˜ ํ”ผ์–ด๊ฐ€ us์˜ ์ž์‹์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค
  • sg-home์ด us/us-east์—๋„ ์ค‘์ฒฉ์„ ํ—ˆ์šฉ โ†’ us-east์˜ ํ”ผ์–ด๊ฐ€ ์†์ž๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค
  • ์–ด๋–ค ํ™‰์ด๋“  ๋„๋ฉด ๊ทธ ์•„๋ž˜์˜ ๋ชจ๋“  ๊ฒƒ์ด UI์™€ ๋ผ์šฐํŒ… ํ”Œ๋ ˆ์ธ์—์„œ ๋™์‹œ์— ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค

์„œ๋กœ ๋‹ค๋ฅธ ๊ฒฝ๋กœ์—์„œ๋Š” ๊ฐ™์€ ํ‘œ์‹œ ์ด๋ฆ„์ด ๋“ฑ์žฅํ•  ์ˆ˜ ์žˆ์ง€๋งŒ (์˜ˆ: A/B/D์™€ A/B/C/D๋Š” ๊ณต์กด ๊ฐ€๋Šฅ), ํ•˜๋‚˜์˜ ๊ฒฝ๋กœ ์•ˆ์—์„œ๋Š” ๊ฐ™์€ ์ด๋ฆ„์ด ๋‘ ๋ฒˆ ๋‚˜ํƒ€๋‚  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. UI์—์„œ ๋ณผ ์ˆ˜ ์—†๋Š” ๋…ธ๋“œ๋Š” ๋‹ค์ด์–ผํ•  ์ˆ˜๋„ ์—†์Šต๋‹ˆ๋‹ค โ€” ํ‘œ์‹œ์™€ ๋ผ์šฐํŒ…์€ ๋™์ผํ•œ ๊ถŒํ•œ ํŒ์ •์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์„ฑํ™”

  • ํ”ผ์–ด๋ฅผ ์—ด๊ณ  ์ค‘์ฒฉ์„ ํ† ๊ธ€ ํ›„ ์ €์žฅ. ์„œ๋ธŒ ํ”ผ์–ด๊ฐ€ ํ•œ ๋ฒˆ์˜ ํ”„๋กœ๋ธŒ ์ฃผ๊ธฐ ์•ˆ์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
  • ๋” ๊นŠ์€ ๋ ˆ๋ฒจ (์ค‘์ฒฉ์˜ ์ค‘์ฒฉ)์€ ๊ฐ ์ค‘๊ฐ„ ๊ฒฝ๋กœ ์„ธ๊ทธ๋จผํŠธ์— nested๋ฅผ ํ—ˆ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค โ€” ์„œ๋ธŒ ํ”ผ์–ด ํ–‰์„ ์—ด๊ณ  ๊ทธ์ชฝ์—์„œ๋„ ์ค‘์ฒฉ์„ ํ† ๊ธ€ํ•˜์„ธ์š”.

Bond ์ง‘๊ณ„ (๋‹ค์ค‘ IP)

ํ”ผ์–ด๊ฐ€ ์—ฌ๋Ÿฌ ์ฃผ์†Œ๋ฅผ ๋…ธ์ถœํ•  ๋•Œ (์˜ˆ: ๋‘ ๊ฐœ์˜ ISP), ๋ชจ๋‘ ์ฃผ์†Œ ํ•ญ๋ชฉ์— ์ถ”๊ฐ€ํ•˜์„ธ์š”. ๋‘ ๊ฐ€์ง€ ์ง‘๊ณ„ ๋ชจ๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค:

๋ชจ๋“œ ๋™์ž‘
Quality ๋ชจ๋“  ๋งํฌ๋ฅผ ์ง€์†์ ์œผ๋กœ ํ”„๋กœ๋น™ํ•˜๊ณ  ์ง€์—ฐ ์‹œ๊ฐ„์ด ๊ฐ€์žฅ ๋‚ฎ์€ ๋งํฌ๋กœ ํŠธ๋ž˜ํ”ฝ์„ ์ „๋‹ฌํ•˜๋ฉฐ, ์„ฑ๋Šฅ ์ €ํ•˜ ์‹œ ์ฆ‰์‹œ ํŽ˜์ผ์˜ค๋ฒ„ํ•ฉ๋‹ˆ๋‹ค
Aggregate ๊ฑด๊ฐ•ํ•œ ๋ชจ๋“  ๋งํฌ์— ๊ฑธ์ณ ํŒจํ‚ท์„ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑํ•ฉ๋‹ˆ๋‹ค โ€” ๋‘ ISP์˜ ๋Œ€์—ญํญ์„ ํ•ฉ์‚ฐํ•ฉ๋‹ˆ๋‹ค

Direct ๋ชจ๋“œ๋Š” ๋‹จ์ผ ์ฃผ์†Œ์ธ ํ‡ดํ™”๋œ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.

๋„ค์ดํ‹ฐ๋ธŒ Hysteria 2 ํ”ผ์–ด

HY2 SCALE์€ ๋ฆด๋ ˆ์ด ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š” ์ผ๋ฐ˜ Hysteria 2 ์„œ๋ฒ„์—๋„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„œ๋ฒ„๋Š” [NATIVE] ๋ฐฐ์ง€์™€ ํ•จ๊ป˜ ๋‚˜ํƒ€๋‚˜๊ณ  ์ง์ ‘ ํŠธ๋ž˜ํ”ฝ ๋ผ์šฐํŒ…์„ ์ง€์›ํ•˜์ง€๋งŒ, ์ค‘์ฒฉ ๊ฒ€์ƒ‰์—๋Š” ์ฐธ์—ฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

ํ† ํด๋กœ์ง€ ํ‘œ์‹œ์ž

๋ฐฐ์ง€ / ์ƒ‰์ƒ ์˜๋ฏธ
ํŒŒ๋ž€์ƒ‰ ์ค‘์‹ฌ ์  ์ž๊ธฐ ๋…ธ๋“œ
๋…ธ๋ž€ ์  + ์—ฃ์ง€ ๋„ค์ดํ‹ฐ๋ธŒ (NATIVE) ํ”ผ์–ด (์ผ๋ฐ˜ Hysteria 2) โ€” ์ธ์ ‘ ์—ฃ์ง€๋Š” ํ‰์ƒ์‹œ ์—ฐ๋…ธ๋ž‘์ด๋ฉฐ ์„ ํƒ ์‹œ ์ฑ„๋„๊ฐ€ ๋†’์•„์ง
์—ฐํ•œ ๋นจ๊ฐ„ ์  ์˜คํ”„๋ผ์ธ / ๋„๋‹ฌ ๋ถˆ๊ฐ€ ํ”ผ์–ด
์‹ค์„  ์—ฃ์ง€ ์—ฐ๊ฒฐ๋จ, ์ •์ƒ
์ ์„  / ํฌ๋ฏธํ•œ ์—ฃ์ง€ ์—ฐ๊ฒฐ ๋Š๊น€ ๋˜๋Š” ๋„๋‹ฌ ๋ถˆ๊ฐ€
์ง€์—ฐ ์‹œ๊ฐ„ ๋ผ๋ฒจ ์—ฃ์ง€๋ณ„ ์™•๋ณต ์‹œ๊ฐ„ (๊ฐ’์— ๋”ฐ๋ผ ์ƒ‰์ƒ)
๋ฐฉํ–ฅ ๋ฐฐ์ง€ (OUT / IN / LOCAL) ์—ฐ๊ฒฐ ๋ฐฉํ–ฅ
[NATIVE] ๋ฐฐ์ง€ ์ผ๋ฐ˜ Hysteria 2 ํ”ผ์–ด
๋…ธ๋ž€ ๋ฒ„์ „ ๋ฐฐ์ง€ ํ”ผ์–ด๊ฐ€ ๋‹ค๋ฅธ HY2 SCALE ๋ฒ„์ „ ์‹คํ–‰
๋นจ๊ฐ„ ร— ๋งˆ์ปค ์˜คํ”„๋ผ์ธ / ๋„๋‹ฌ ๋ถˆ๊ฐ€ ํ”ผ์–ด

์ถœ๊ตฌ ๋ผ์šฐํŒ…

์ถœ๊ตฌ ๋…ธ๋“œ๊ฐ€ ํ™œ์„ฑํ™”๋œ ๋ชจ๋“  ๋…ธ๋“œ๋Š” ํŠธ๋ž˜ํ”ฝ์„ ์ธํ„ฐ๋„ท์œผ๋กœ ํฌ์›Œ๋”ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋ณ„ ๋˜๋Š” ๊ทœ์น™๋ณ„ exit_via ๊ฒฝ๋กœ๊ฐ€ ํŠน์ • ํŠธ๋ž˜ํ”ฝ์„ ๋…ธ๋“œ ์ฒด์ธ์„ ํ†ตํ•ด ๋ผ์šฐํŒ…ํ•ฉ๋‹ˆ๋‹ค:

exit_via: "jp"                   # ํ•œ ํ™‰
exit_via: "us/us-east"           # ๋‘ ํ™‰
exit_via: "kr/kr-r1/kr-r1-a"     # ์„ธ ํ™‰

UI์˜ ์ž๋™์™„์„ฑ์€ ํ˜„์žฌ ํ† ํด๋กœ์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค โ€” ๋„๋‹ฌ ๊ฐ€๋Šฅํ•˜๊ณ  ์ค‘์ฒฉ์ด ํ—ˆ์šฉ๋œ ๊ฒฝ๋กœ๋งŒ ์ œ์•ˆ๋ฉ๋‹ˆ๋‹ค.

๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ตํ™˜

ํ”ผ์–ด๋Š” ๋ฆด๋ ˆ์ด ํ”„๋กœํ† ์ฝœ ์œ„์—์„œ ์ž‘์€ JSON ๋ฌธ์„œ๋ฅผ ๊ตํ™˜ํ•ฉ๋‹ˆ๋‹ค:

  • ๋…ธ๋“œ ์ด๋ฆ„๊ณผ ID
  • ๋ฒ„์ „ ๋ฌธ์ž์—ด
  • ์ถœ๊ตฌ ๋…ธ๋“œ ํ”Œ๋ž˜๊ทธ
  • ์บ์‹œ๋œ ์„œ๋ธŒ ํ”ผ์–ด ๋ชฉ๋ก (์ค‘์ฒฉ ๊ฒ€์ƒ‰์šฉ)
  • ์ง€์—ฐ ์‹œ๊ฐ„ ํ”„๋กœ๋ธŒ

์Šคํ‚ค๋งˆ๋Š” ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ํ–ฅํ›„ ๊ธฐ๋Šฅ์„ ํ”„๋กœํ† ์ฝœ ํ˜ธํ™˜์„ฑ์„ ๊นจ์ง€ ์•Š๊ณ  ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฆด๋ ˆ์ด ํ”„๋กœํ† ์ฝœ ์ŠคํŠธ๋ฆผ

๊ถ๊ธˆํ•œ ๋ถ„์„ ์œ„ํ•œ ๋‚ด๋ถ€ QUIC ์ŠคํŠธ๋ฆผ ID:

์ŠคํŠธ๋ฆผ ํ”„๋ฆฌํ”ฝ์Šค ์šฉ๋„
_relay_register_ ๋…ธ๋“œ ๋“ฑ๋ก
_relay_s2c_ctrl_ ์„œ๋ฒ„โ†’ํด๋ผ์ด์–ธํŠธ ์ œ์–ด
_relay_list_peers_ ํ”ผ์–ด ๋ชฉ๋ก ๊ตํ™˜
_relay_latency_ ์ง€์—ฐ ์‹œ๊ฐ„ ํ”„๋กœ๋น™
_relay_via_* ๋ผ์šฐํŠธ ์ œ์–ด
_relay_data_* ๋ฐ์ดํ„ฐ ํฌ์›Œ๋”ฉ