Netlink ๋ฐ WireGuard๋ฅผ ์ง€์›ํ•˜๋Š” FreeBSD 13.2 ๋ฆด๋ฆฌ์Šค

11๊ฐœ์›”์˜ ๊ฐœ๋ฐœ ๋์— FreeBSD 13.2๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 ๋ฐ riscv64 ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์„ค์น˜ ์ด๋ฏธ์ง€๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ฐ€์ƒํ™” ์‹œ์Šคํ…œ(QCOW2, VHD, VMDK, raw) ๋ฐ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ Amazon EC2, Google Compute Engine ๋ฐ Vagrant๋ฅผ ์œ„ํ•œ ์–ด์…ˆ๋ธ”๋ฆฌ๊ฐ€ ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • ๋กœ๊น…์ด ํ™œ์„ฑํ™”๋œ(์†Œํ”„ํŠธ ์—…๋ฐ์ดํŠธ) UFS ๋ฐ FFS ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ €๋„๋ง์ด ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ ๋งˆ์šดํŠธ๋œ UFS ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋‚ด์šฉ๊ณผ ํ•จ๊ป˜ ๋คํ”„์˜ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ €์žฅ("-L" ํ”Œ๋ž˜๊ทธ๋กœ ๋คํ”„ ์‹คํ–‰)์— ๋Œ€ํ•œ ์ง€์›๋„ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊น…์„ ์‚ฌ์šฉํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋Š” fsck ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ๋ฐฑ๊ทธ๋ผ์šด๋“œ๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ๊ธฐ๋ณธ ๊ตฌ์„ฑ์—๋Š” VPN WireGuard์šฉ ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„๊ณผ ํ•จ๊ป˜ ์ปค๋„ ์ˆ˜์ค€์—์„œ ์ž‘๋™ํ•˜๋Š” wg ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋“œ๋ผ์ด๋ฒ„์— ํ•„์š”ํ•œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด FreeBSD ์ปค๋„ ์•”ํ˜ธํ™” ํ•˜์œ„ ์‹œ์Šคํ…œ์˜ API๊ฐ€ ํ™•์žฅ๋˜์—ˆ์œผ๋ฉฐ, ์—ฌ๊ธฐ์— ํ‘œ์ค€ ์•”ํ˜ธํ™” API๋ฅผ ํ†ตํ•ด FreeBSD์—์„œ ์ง€์›๋˜์ง€ ์•Š๋Š” libsodium ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ํ•˜๋„ค์Šค๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. . ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ CPU ์ฝ”์–ด์— ๋Œ€ํ•œ ํŒจํ‚ท ์•”ํ˜ธํ™” ๋ฐ ์•”ํ˜ธ ํ•ด๋… ์ž‘์—… ๋ฐ”์ธ๋”ฉ์˜ ๊ท ํ˜•์„ ๊ท ๋“ฑํ•˜๊ฒŒ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ตœ์ ํ™”๋„ ์ˆ˜ํ–‰๋˜์–ด WireGuard ํŒจํ‚ท์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๊ฐ์†Œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    FreeBSD์— WireGuard๋ฅผ ํฌํ•จ์‹œํ‚ค๋ ค๋Š” ๋งˆ์ง€๋ง‰ ์‹œ๋„๋Š” 2020๋…„์— ์ด๋ฃจ์–ด์กŒ์ง€๋งŒ ์Šค์บ”๋“ค๋กœ ๋๋‚ฌ์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ ๋‚ฎ์€ ํ’ˆ์งˆ, ๋ถ€์ฃผ์˜ํ•œ ๋ฒ„ํผ ์ž‘์—…, ๊ฒ€์‚ฌ โ€‹โ€‹๋Œ€์‹  ์Šคํ… ์‚ฌ์šฉ, ๋ถˆ์™„์ „ํ•œ ๊ตฌํ˜„์œผ๋กœ ์ธํ•ด ์ด๋ฏธ ์ถ”๊ฐ€๋œ ์ฝ”๋“œ๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœํ† ์ฝœ ์œ„๋ฐ˜ ๋ฐ GPL ๋ผ์ด์„ผ์Šค ์œ„๋ฐ˜. ์ƒˆ๋กœ์šด ๊ตฌํ˜„์€ VPN WireGuard์˜ ์ž‘์„ฑ์ž์ธ Jason A. Donenfeld์™€ ์œ ๋ช…ํ•œ FreeBSD ๊ฐœ๋ฐœ์ž์ธ John H. Baldwin์˜ ๋„์›€์„ ๋ฐ›์•„ ํ•ต์‹ฌ FreeBSD ๋ฐ WireGuard ๊ฐœ๋ฐœ ํŒ€์ด ๊ณต๋™์œผ๋กœ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ์ฝ”๋“œ๊ฐ€ ์Šน์ธ๋˜๊ธฐ ์ „์— FreeBSD ์žฌ๋‹จ์˜ ์ง€์›์„ ๋ฐ›์•„ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ „์ฒด ๊ฒ€ํ† ๊ฐ€ ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

  • ์‚ฌ์šฉ์ž ๊ณต๊ฐ„์—์„œ ์ปค๋„๊ณผ ํ”„๋กœ์„ธ์Šค์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด Linux์—์„œ ์‚ฌ์šฉ๋˜๋Š” Netlink ํ†ต์‹  ํ”„๋กœํ† ์ฝœ(RFC 3549)์— ๋Œ€ํ•œ ์ง€์›์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ์ปค๋„์—์„œ ๋„คํŠธ์›Œํฌ ํ•˜์œ„ ์‹œ์Šคํ…œ์˜ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ NETLINK_ROUTE ์ž‘์—… ์ œํ’ˆ๊ตฐ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด FreeBSD๋Š” iproute2 ํŒจํ‚ค์ง€์˜ Linux ip ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ , IP โ€‹โ€‹์ฃผ์†Œ๋ฅผ ์„ค์ •ํ•˜๊ณ , ๋ผ์šฐํŒ…์„ ๊ตฌ์„ฑํ•˜๊ณ , ๋‹ค์Œ ํ™‰์„ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ท์„ ์›ํ•˜๋Š” ๋ชฉ์ ์ง€๋กœ ์ „์†กํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ƒํƒœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค.
  • 64๋น„ํŠธ ํ”Œ๋žซํผ์˜ ๋ชจ๋“  ๊ธฐ๋ณธ ์‹œ์Šคํ…œ ์‹คํ–‰ ํŒŒ์ผ์—๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ASLR(Address Space Layout Randomization)์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ASLR์„ ์„ ํƒ์ ์œผ๋กœ ๋น„ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด "proccontrol -m aslr -s ๋น„ํ™œ์„ฑํ™”" ๋˜๋Š” "elfctl -e +noaslr" ๋ช…๋ น์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ipfw์—์„œ๋Š” ๊ธฐ์ˆ˜ ํ…Œ์ด๋ธ”์„ ์‚ฌ์šฉํ•˜์—ฌ MAC ์ฃผ์†Œ๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด MAC ์ฃผ์†Œ๊ฐ€ ํฌํ•จ๋œ ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠธ๋ž˜ํ”ฝ์„ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ: ipfw table 1 create type mac ipfw table 1 add 11:22:33:44:55:66/48 ipfw add skito tablearg src-mac 'table(1)' ipfw add ๊ฑฐ๋ถ€ src-mac 'table(1, 100 )' ipfw ์ถ”๊ฐ€ ๊ฑฐ๋ถ€ ์กฐํšŒ dst-mac 1
  • ์ปค๋„ ๋ชจ๋“ˆ dpdk_lpm4 ๋ฐ dpdk_lpm6์ด ์ถ”๊ฐ€๋˜์—ˆ์œผ๋ฉฐ IPv24/IPv8์šฉ DIR-4-6 ๊ฒฝ๋กœ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•˜์—ฌ loader.conf๋ฅผ ํ†ตํ•ด ๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋งค์šฐ ํฐ ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”์ด ์žˆ๋Š” ํ˜ธ์ŠคํŠธ์— ๋Œ€ํ•œ ๋ผ์šฐํŒ… ๊ธฐ๋Šฅ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค( ํ…Œ์ŠคํŠธ์—์„œ 25%์˜ ์†๋„ ์ฆ๊ฐ€๊ฐ€ ๊ด€์ฐฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์„ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ํ‘œ์ค€ ๊ฒฝ๋กœ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(FIB_ALGO ์˜ต์…˜์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค).
  • ZFS ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ตฌํ˜„์ด ์—…๋ฐ์ดํŠธ๋˜์–ด OpenZFS 2.1.9๊ฐ€ ๋ฆด๋ฆฌ์Šค๋˜์—ˆ์Šต๋‹ˆ๋‹ค. zfskeys ์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ๋Š” ZFS ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์ €์žฅ๋œ ํ‚ค์˜ ์ž๋™ ๋กœ๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜ ์ด์ƒ์˜ zpool์— GUID๋ฅผ ํ• ๋‹นํ•˜๊ธฐ ์œ„ํ•œ ์ƒˆ๋กœ์šด RC ์Šคํฌ๋ฆฝํŠธ zpoolreguid๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ๊ณต์œ  ๋ฐ์ดํ„ฐ ๊ฐ€์ƒํ™” ํ™˜๊ฒฝ์— ์œ ์šฉํ•จ).
  • Bhyve ํ•˜์ดํผ๋ฐ”์ด์ €์™€ vmm ๋ชจ๋“ˆ์€ ๊ฒŒ์ŠคํŠธ ์‹œ์Šคํ…œ์— 15๊ฐœ ์ด์ƒ์˜ ๊ฐ€์ƒ CPU ์—ฐ๊ฒฐ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค(sysctl hw.vmm.maxcpu๋ฅผ ํ†ตํ•ด ๊ทœ์ œ๋จ). bhyve ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ํ‚ค๋ณด๋“œ ๋ฐ ๋งˆ์šฐ์Šค ์ž…๋ ฅ ์ด๋ฒคํŠธ๋ฅผ ๊ฒŒ์ŠคํŠธ ์‹œ์Šคํ…œ์œผ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” virtio ์ž…๋ ฅ ์žฅ์น˜์˜ ์—๋ฎฌ๋ ˆ์ด์…˜์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • FreeBSD ์ปค๋„ ์ˆ˜์ค€์—์„œ ์‹คํ–‰๋˜๋Š” TLS ํ”„๋กœํ† ์ฝœ ๊ตฌํ˜„์ธ KTLS์—์„œ๋Š” ์•”ํ˜ธํ™”๋œ ์ˆ˜์‹  ํŒจํ‚ท ์ฒ˜๋ฆฌ์™€ ๊ด€๋ จ๋œ ์ผ๋ถ€ ์ž‘์—…์„ ๋„คํŠธ์›Œํฌ ์นด๋“œ๋กœ ์˜คํ”„๋กœ๋“œํ•˜์—ฌ TLS 1.3์˜ ํ•˜๋“œ์›จ์–ด ๊ฐ€์† ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” TLS 1.1 ๋ฐ TLS 1.2์—์„œ๋„ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
  • Growfs ์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ฃจํŠธ ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ํ™•์žฅํ•  ๋•Œ ํ•ด๋‹น ํŒŒํ‹ฐ์…˜์ด ์ฒ˜์Œ์— ๋ˆ„๋ฝ๋œ ๊ฒฝ์šฐ ์Šค์™‘ ํŒŒํ‹ฐ์…˜์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: SD ์นด๋“œ์— ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ์‹œ์Šคํ…œ ์ด๋ฏธ์ง€๋ฅผ ์„ค์น˜ํ•  ๋•Œ ์œ ์šฉํ•จ). ์Šค์™‘ ํฌ๊ธฐ๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ์ƒˆ๋กœ์šด ๋งค๊ฐœ๋ณ€์ˆ˜์ธrowfs_swap_size๊ฐ€ rc.conf์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Hostid ์‹œ์ž‘ ์Šคํฌ๋ฆฝํŠธ๋Š” /etc/hostid ํŒŒ์ผ์ด ๋ˆ„๋ฝ๋˜์–ด ํ•˜๋“œ์›จ์–ด์—์„œ UUID๋ฅผ ์–ป์„ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ž„์˜์˜ UUID๊ฐ€ ์ƒ์„ฑ๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํ˜ธ์ŠคํŠธ ID๋ฅผ ๊ฐ„๋žตํ•˜๊ฒŒ ํ‘œํ˜„ํ•œ(ํ•˜์ดํ”ˆ ์—†์Œ) /etc/machine-id ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • defaultrouter_fibN ๋ฐ ipv6_defaultrouter_fibN ๋ณ€์ˆ˜๊ฐ€ rc.conf์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ธฐ๋ณธ ๊ฒฝ๋กœ๊ฐ€ ์•„๋‹Œ FIB ํ…Œ์ด๋ธ”์— ๊ธฐ๋ณธ ๊ฒฝ๋กœ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • SHA-512/224 ํ•ด์‹œ์— ๋Œ€ํ•œ ์ง€์›์ด libmd ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • pthread ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” Linux์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜์˜ ์˜๋ฏธ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • kdump์— ๋Œ€ํ•œ Linux ์‹œ์Šคํ…œ ํ˜ธ์ถœ ๋””์ฝ”๋”ฉ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. kdump ๋ฐ sysdecode์— ๋Œ€ํ•œ Linux ์Šคํƒ€์ผ ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์ถ”์ ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ด์ œ killall ์œ ํ‹ธ๋ฆฌํ‹ฐ์—๋Š” ํŠน์ • ํ„ฐ๋ฏธ๋„์— ๋ฐ”์ธ๋”ฉ๋œ ํ”„๋กœ์„ธ์Šค์— ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ด๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: "killall -t pts/1").
  • ํ˜„์žฌ ํ”„๋กœ์„ธ์Šค์— ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณ„์‚ฐ ๋ธ”๋ก ์ˆ˜๋ฅผ ํ‘œ์‹œํ•˜๋Š” nproc ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ACS(์•ก์„ธ์Šค ์ œ์–ด ์„œ๋น„์Šค) ๋งค๊ฐœ๋ณ€์ˆ˜ ๋””์ฝ”๋”ฉ ์ง€์›์ด pciconf ์œ ํ‹ธ๋ฆฌํ‹ฐ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • SPLIT_KERNEL_DEBUG ์„ค์ •์ด ์ปค๋„์— ์ถ”๊ฐ€๋˜์–ด ์ปค๋„ ๋ฐ ์ปค๋„ ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ๋””๋ฒ„๊น… ์ •๋ณด๋ฅผ ๋ณ„๋„์˜ ํŒŒ์ผ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Linux ABI๋Š” ์ปจํ…์ŠคํŠธ ์ „ํ™˜ ์—†์ด ์‚ฌ์šฉ์ž ๊ณต๊ฐ„์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ œํ•œ๋œ ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์„ธํŠธ๋ฅผ ์ œ๊ณตํ•˜๋Š” vDSO(๊ฐ€์ƒ ๋™์  ๊ณต์œ  ๊ฐ์ฒด) ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๊ฑฐ์˜ ์™„๋ฒฝํ•˜๊ฒŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ARM64 ์‹œ์Šคํ…œ์˜ Linux ABI๋Š” AMD64 ์•„ํ‚คํ…์ฒ˜ ๊ตฌํ˜„๊ณผ ๋™๋“ฑํ•ด์กŒ์Šต๋‹ˆ๋‹ค.
  • ํ–ฅ์ƒ๋œ ํ•˜๋“œ์›จ์–ด ์ง€์›. Intel Alder Lake CPU์— ๋Œ€ํ•œ ์„ฑ๋Šฅ ๋ชจ๋‹ˆํ„ฐ๋ง(hwpmc) ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Intel ๋ฌด์„  ์นด๋“œ์šฉ iwlwifi ๋“œ๋ผ์ด๋ฒ„๋Š” ์ƒˆ๋กœ์šด ์นฉ๊ณผ 802.11ac ํ‘œ์ค€์„ ์ง€์›ํ•˜๋„๋ก ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. PCI ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์žˆ๋Š” Realtek ๋ฌด์„  ์นด๋“œ์šฉ rtw88 ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. linuxkpi ๊ณ„์ธต์˜ ๊ธฐ๋Šฅ์€ FreeBSD์˜ Linux ๋“œ๋ผ์ด๋ฒ„์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • OpenSSL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ฒ„์ „ 1.1.1t๋กœ, LLVM/ะกlang์€ ๋ฒ„์ „ 14.0.5๋กœ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์œผ๋ฉฐ, SSH ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ๋Š” OpenSSH 9.2p1๋กœ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ด์ „ ๋ฒ„์ „์—์„œ๋Š” OpenSSH 8.8p1์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค). ๋˜ํ•œ ๋ฒ„์ „ bc 6.2.4, expat 2.5.0, file 5.43, less 608, libarchive 3.6.2, sendmail 8.17.1, sqlite 3.40.1, unbound 1.17.1, zlib 1.2.13๋„ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ FreeBSD 14.0 ๋ธŒ๋žœ์น˜๋ถ€ํ„ฐ ์ผํšŒ์šฉ ๋น„๋ฐ€๋ฒˆํ˜ธ OPIE, ce ๋ฐ cp ๋“œ๋ผ์ด๋ฒ„, ISA ์นด๋“œ์šฉ ๋“œ๋ผ์ด๋ฒ„, mergemaster ๋ฐ minigzip ์œ ํ‹ธ๋ฆฌํ‹ฐ, netgraph(NgATM)์˜ ATM ๊ตฌ์„ฑ ์š”์†Œ, telnetd ๋ฐฑ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค ๋ฐ ๊ธฐํ•˜ํ•™์˜ VINUM ํด๋ž˜์Šค.

์ถœ์ฒ˜ : opennet.ru

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