OpenBGPD 6.7p0์˜ ํœด๋Œ€์šฉ ๋ฒ„์ „ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

OpenBSD ๊ฐœ๋ฐœ์ž ์ถœํŒํ•˜๋‹ค ๋ผ์šฐํŒ… ํŒจํ‚ค์ง€์˜ ํœด๋Œ€์šฉ ๋ฒ„์ „ ์ถœ์‹œ ์˜คํ”ˆBGPD 6.7, OpenBSD ์ด์™ธ์˜ ์šด์˜ ์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์‹์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด OpenNTPD, OpenSSH ๋ฐ LibreSSL ํ”„๋กœ์ ํŠธ์˜ ์ฝ”๋“œ ์ผ๋ถ€๊ฐ€ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. OpenBSD ์™ธ์—๋„ Linux ๋ฐ FreeBSD์— ๋Œ€ํ•œ ์ง€์›์ด ๋ฐœํ‘œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. OpenBGPD๋Š” Debian 9, Ubuntu 14.04+ ๋ฐ FreeBSD 12์—์„œ ํ…Œ์ŠคํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

OpenBGPD๋Š” ์•„๋ž˜์—์„œ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค. ๋’ท๋ฐ›์นจ ๋œ OpenBGPD์˜ ๊ธฐ๋Šฅ์„ ์ƒํ˜ธ ์šด์šฉ์ž ํŠธ๋ž˜ํ”ฝ ๊ตํ™˜ ์ง€์ (IXP)์—์„œ ๋ผ์šฐํŒ…ํ•˜๊ธฐ ์œ„ํ•ด ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ์— ์ ํ•ฉํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์™„์ „ํ•œ ๋Œ€์•ˆ์„ ๋งŒ๋“œ๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋Š” ์ง€์—ญ ์ธํ„ฐ๋„ท ๋“ฑ๋ก ๊ธฐ๊ด€ RIPE NCC ์ƒˆ (BGP ํ”„๋กœํ† ์ฝœ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋‹ค๋ฅธ ๊ฐœ๋ฐฉํ˜• ๋Œ€์•ˆ์—๋Š” ํ”„๋กœ์ ํŠธ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. FRR๋ผ์šฐํŒ…, GoBGP, ์—‘์‚ฌBGP ะธ ๋ฐ”์ด์˜ค ๋ผ์šฐํŒ…).

OpenBGPD์˜ ๊ฐœ๋ฐœ์€ ์ตœ๊ณ  ์ˆ˜์ค€์˜ ๋ณด์•ˆ๊ณผ ์•ˆ์ •์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด ๋ชจ๋“  ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ •ํ™•์„ฑ์— ๋Œ€ํ•œ ์—„๊ฒฉํ•œ ๊ฒ€์ฆ, ๋ฒ„ํผ ๊ฒฝ๊ณ„ ์ค€์ˆ˜ ๋ชจ๋‹ˆํ„ฐ๋ง ์ˆ˜๋‹จ, ๊ถŒํ•œ ๋ถ„๋ฆฌ ๋ฐ ์‹œ์Šคํ…œ ํ˜ธ์ถœ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์ œํ•œ์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์žฅ์ ์œผ๋กœ๋Š” ๊ตฌ์„ฑ ์ •์˜ ์–ธ์–ด์˜ ํŽธ๋ฆฌํ•œ ๊ตฌ๋ฌธ, ๊ณ ์„ฑ๋Šฅ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด OpenBGPD๋Š” ์ˆ˜์‹ญ๋งŒ ๊ฐœ์˜ ํ•ญ๋ชฉ์ด ํฌํ•จ๋œ ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”์—์„œ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ๋Œ€๋ถ€๋ถ„์˜ BGP 4 ์‚ฌ์–‘์„ ์ง€์›ํ•˜๊ณ  RFC8212์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ค€์ˆ˜ํ•˜์ง€๋งŒ ๊ด‘๋ฒ”์œ„ํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜์šฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€ ์•Š๊ณ  ์ฃผ๋กœ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ง€์›์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

OpenBGPD 6.7 ์ถœ์‹œ ๋‘๋“œ๋Ÿฌ์ง„ ๋‹ค์Œ ๊ฐœ์„  ์‚ฌํ•ญ:

  • bgpctl ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” JSON ์ถœ๋ ฅ์— ๋Œ€ํ•œ ์ดˆ๊ธฐ ์ง€์›์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ะ’ bgpd.conf "๊ทธ๋ฃน" ๋ธ”๋ก์˜ local-address ์ง€์‹œ๋ฌธ์—์„œ IPv4 ๋ฐ IPv6 ์ฃผ์†Œ๋ฅผ ๋™์‹œ์— ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ ‘๋‘์‚ฌ/์†Œ์Šค-as ์Œ์ด ์žˆ๋Š” ROA ํ…Œ์ด๋ธ”(Route Origin Authorization)์„ ๊ฐ€์žฅ ๊ธด "maxlen" ๊ฐ’์„ ๊ฐ€์ง„ ํ•˜๋‚˜์˜ ์š”์†Œ๋กœ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ง‘๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค.
  • ์ „์ฒด ํ…Œ์ด๋ธ” ๋ˆ„์ถœ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๊ด‘๊ณ ๋œ ์ ‘๋‘์‚ฌ ์ˆ˜๋ฅผ ์ œํ•œํ•˜๊ธฐ ์œ„ํ•ด "max-prefix {NUM} out" ์†์„ฑ์„ bgpd.conf์— ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • bgpctl์—์„œ 'show neighbor' ๋ช…๋ น์€ ์ˆ˜์‹  ๋ฐ ์„ค์ •๋œ ์ ‘๋‘์‚ฌ์˜ ์นด์šดํ„ฐ์™€ "max-prefix out" ์ œํ•œ ๊ฐ’์„ ํ‘œ์‹œํ•˜๋„๋ก ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์•Œ๋ฆผ์—๋Š” ์ค‘์ฒฉ๋œ ์˜ค๋ฅ˜์˜ ์›์ธ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. "bgpctl show neighbor" ๋ช…๋ น์€ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ˆ˜์‹ ๋œ ์˜ค๋ฅ˜์˜ ์›์ธ์— ๋Œ€ํ•œ ์ถœ๋ ฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • "graceful reload" ์ž‘์—…์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด Adj-RIB-Out ํ…Œ์ด๋ธ”์— ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ ‘๋‘์‚ฌ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด ํ…Œ์ด๋ธ”์€ ์ตœ์ ์˜ ๊ฒฝ๋กœ๋ฅผ ํ”ผ์–ด์—๊ฒŒ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•ด ๋กœ์ปฌ BGP ๋ผ์šฐํ„ฐ์—์„œ ์„ ํƒํ•œ ๊ฒฝ๋กœ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • byacc ์—†์ด bison ํŒŒ์„œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OpenBGPD๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • bgpctl.sock์— ๋Œ€ํ•œ ๊ฒฝ๋กœ๋ฅผ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” "--runstatedir" ์˜ต์…˜์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ด์‹์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๊ตฌ์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€