ip netns(8) - wariua/manpages-ko GitHub Wiki

NAME

ip-netns - ํ”„๋กœ์„ธ์Šค ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ด€๋ฆฌ

SYNOPSIS

ip [ OPTIONS ] netns { COMMAND | help }

ip netns [ list ]

ip netns add NETNSNAME

ip [-all] netns del [ NETNSNAME ]

ip netns set NETNSNAME NETNSID

ip netns identify [ PID ]

ip netns pids NETNSNAME

ip [-all] netns exec [ NETNSNAME ] command...

ip netns monitor

ip netns list-id

DESCRIPTION

๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋Š” ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋„คํŠธ์›Œํฌ ์Šคํƒ์˜ ๋˜ ๋‹ค๋ฅธ ์‚ฌ๋ณธ์ด๋‹ค. ์ž์ฒด ๋ผ์šฐํŠธ์™€ ๋ฐฉํ™”๋ฒฝ ๊ทœ์น™, ๋„คํŠธ์›Œํฌ ์žฅ์น˜๊ฐ€ ์žˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ํ”„๋กœ์„ธ์Šค๋Š” ๋ถ€๋ชจ์˜ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋ฌผ๋ ค๋ฐ›๋Š”๋‹ค. ์ฒ˜์Œ์—๋Š” ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๊ฐ€ init ํ”„๋กœ์„ธ์Šค์—์„œ ์˜จ ๊ธฐ๋ณธ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ฐ™์ด ๊ณต์œ ํ•œ๋‹ค.

๊ด€ํ–‰ ์ƒ ๊ธฐ๋ช…(named) ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ž€ /var/run/netns/NAME์— ์žˆ๋Š” ์—ด ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด์ด๋‹ค. /var/run/netns/NAME์„ ์—ด์–ด์„œ ๋‚˜์˜จ ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๊ฐ€ ์ง€์ •ํ•œ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค. ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๋ฅผ ์—ด์–ด ๋‘๋ฉด ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๊ฐ€ ๊ณ„์† ์‚ด์•„ ์žˆ๊ฒŒ ๋œ๋‹ค. ์ด ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๋ฅผ setns(2) ์‹œ์Šคํ…œ ํ˜ธ์ถœ์— ์‚ฌ์šฉํ•ด์„œ ํƒœ์Šคํฌ์— ์—ฐ๊ณ„๋œ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค.

๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์ธ์‹ํ•˜๋Š” ์‘์šฉ์—์„œ๋Š” ์ „์—ญ ๋„คํŠธ์›Œํฌ ์„ค์ •์„ /etc/netns/NAME/์—์„œ ๋จผ์ € ์ฐพ์•„๋ณธ ๋‹ค์Œ /etc/์—์„œ ์ฐพ๋Š” ๊ฒŒ ๊ด€ํ–‰์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด vpn์„ ๊ฒฉ๋ฆฌ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์–ด๋А ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ๋‹ค๋ฅธ ๋ฒ„์ „์˜ /etc/resolv.conf๋ฅผ ์“ฐ๊ณ  ์‹ถ๋‹ค๋ฉด ์ด๋ฆ„์„ /etc/netns/myvpn/resolv.conf๋ผ๊ณ  ํ•˜๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค.

๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋น„์ธ์‹ ์‘์šฉ์„ ์œ„ํ•ด ip netns exec๊ฐ€ ์ด๋Ÿฐ ์„ค์ • ๋ฐ ํŒŒ์ผ ๊ด€ํ–‰ ์ฒ˜๋ฆฌ๋ฅผ ์ž๋™ํ™”ํ•ด ์ค€๋‹ค. ๋งˆ์šดํŠธ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค์–ด์„œ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ณ„ ์„ค์ • ํŒŒ์ผ ๋ชจ๋‘๋ฅผ /etc ๋‚ด์˜ ์ „ํ†ต์  ์œ„์น˜๋กœ ๊ฒฐ์†(bind) ๋งˆ์šดํŠธ ํ•œ๋‹ค.

ip netns list - ๋ชจ๋“  ๊ธฐ๋ช… ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ํ‘œ์‹œํ•˜๊ธฐ
์ด ๋ช…๋ น์€ `/var/run/netns` ๋‚ด์˜ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋ชจ๋‘ ํ‘œ์‹œํ•œ๋‹ค.
ip netns add NAME - ์ƒˆ ๊ธฐ๋ช… ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ƒ์„ฑํ•˜๊ธฐ
์ด ๋ช…๋ น์€ `/var/run/netns/`์—์„œ NAME์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋ฉด ์ƒˆ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค๊ณ  NAME์„ ๋ถ€์—ฌํ•œ๋‹ค.
ip [-all] netns delete [ NAME ] - ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค(๋“ค)์˜ ์ด๋ฆ„ ์‚ญ์ œํ•˜๊ธฐ

/var/run/netns์— NAME์ด ์žˆ์œผ๋ฉด ์–ธ๋งˆ์šดํŠธ ํ•˜๊ณ  ๋งˆ์šดํŠธ ์ง€์ ์„ ์ œ๊ฑฐํ•œ๋‹ค. ์ด ๋ช…๋ น์ด ๊ทธ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ ๋งˆ์ง€๋ง‰ ์‚ฌ์šฉ์ž์ด๋ฉด ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๊ฐ€ ํ•ด์ œ๋˜๊ณ  ๋ชจ๋“  ๋ฌผ๋ฆฌ์  ์žฅ์น˜๋“ค์ด ๊ธฐ๋ณธ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋กœ ์˜ฎ๊ฒจ์ง„๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋” ์ด์ƒ ์‚ฌ์šฉ์ž๊ฐ€ ์—†์„ ๋•Œ๊นŒ์ง€ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๊ฐ€ ์œ ์ง€๋œ๋‹ค. ๋งˆ์šดํŠธ ์ง€์ ์ด ๋‹ค๋ฅธ ๋งˆ์šดํŠธ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์—์„œ ์‚ฌ์šฉ ์ค‘์ด๋ฉด ip netns delete๊ฐ€ ์‹คํŒจํ•  ์ˆ˜ ์žˆ๋‹ค.

-all ์˜ต์…˜์„ ์ง€์ •ํ•˜๋ฉด ๋ชจ๋“  ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ด๋ฆ„์ด ์ œ๊ฑฐ๋œ๋‹ค.

๋ฌผ๋ฆฌ์  ์žฅ์น˜๋ฅผ ์–ด๋–ค netns๋กœ ์˜ฎ๊ธฐ๊ณ ์„œ ๋™์ž‘ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์žˆ๋Š” ์ฑ„๋กœ netns๋ฅผ ์‚ญ์ œํ•˜๋ฉด ๊ทธ ์žฅ์น˜๋ฅผ ๋†“์น˜๊ฒŒ ๋  ์ˆ˜ ์žˆ๋‹ค.

$ ip netns add net0
$ ip link set dev eth0 netns net0
$ ip netns exec net0 SOME_PROCESS_IN_BACKGROUND
$ ip netns del net0

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด SOME_PROCESS_IN_BACKGROUND๊ฐ€ ์ข…๋ฃŒํ•˜๊ฑฐ๋‚˜ ์ฃฝ์€ ํ›„์—๋งŒ eth0๊ฐ€ ๊ธฐ๋ณธ netns์— ๋‚˜ํƒ€๋‚˜๊ฒŒ ๋œ๋‹ค. ์ด๋ฅผ ๋ง‰์œผ๋ ค๋ฉด net0๋ฅผ ์‚ญ์ œํ•˜๊ธฐ ์ „์— ๊ทธ netns์—์„œ ๋„๋Š” ํ”„๋กœ์„ธ์Šค๋“ค์„ ์ฃฝ์ด๋Š” ๊ฒŒ ์ข‹๋‹ค.

$ ip netns pids net0 | xargs kill
$ ip netns del net0
ip netns set NAME SETNSID - ์ƒ๋Œ€ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— id ๋ถ€์—ฌํ•˜๊ธฐ
์ด ๋ช…๋ น์€ ์ƒ๋Œ€ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— id๋ฅผ ๋ถ€์—ฌํ•œ๋‹ค. ์ด id๋Š” ํ˜„์žฌ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์—์„œ๋งŒ ์œ ํšจํ•˜๋‹ค. ์ปค๋„์ด ๋ช‡ ๊ฐ€์ง€ ๋„ท๋งํฌ ๋ฉ”์‹œ์ง€์—์„œ ์ด id๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ปค๋„์—์„œ ํ•„์š”ํ•  ๋•Œ id๊ฐ€ ๋ถ€์—ฌ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ์ปค๋„์ด ์ž๋™์œผ๋กœ ๋ถ€์—ฌํ•œ๋‹ค. ํ•œ๋ฒˆ ๋ถ€์—ฌ๋œ ํ›„์—๋Š” ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.
ip netns identify [PID] - ํ”„๋กœ์„ธ์Šค์˜ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋“ค ์ด๋ฆ„ ์•Œ๋ ค์ฃผ๊ธฐ
์ด ๋ช…๋ น์€ `/var/run/netns`๋ฅผ ๋’ค์ ธ์„œ ์ง€์ •ํ•œ ํ”„๋กœ์„ธ์Šค์˜ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ๋Œ€ํ•œ ๋ชจ๋“  ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ด๋ฆ„์„ ์ฐพ๋Š”๋‹ค. PID๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ํ˜„์žฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์“ด๋‹ค.
ip netns pids NAME - ๊ธฐ๋ช… ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋‚ด์˜ ํ”„๋กœ์„ธ์Šค๋“ค ์•Œ๋ ค์ฃผ๊ธฐ
์ด ๋ช…๋ น์€ proc์„ ๋’ค์ ธ์„œ ์ฃผ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๊ฐ€ ์ง€์ •ํ•œ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์ธ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค๋ฅผ ์ฐพ๋Š”๋‹ค.
ip [-all] netns exec [ NAME ] cmd ... - ๊ธฐ๋ช… ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์—์„œ cmd ์‹คํ–‰ํ•˜๊ธฐ

์ด ๋ช…๋ น์„ ์ด์šฉํ•˜๋ฉด ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋น„์ธ์‹์ธ ์‘์šฉ์„ ๊ธฐ๋ณธ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์•„๋‹Œ ์–ด๋”˜๊ฐ€์—์„œ ๋Œ๋ฆด ์ˆ˜ ์žˆ๋‹ค. ์ง€์ •ํ•œ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ๋Œ€ํ•œ ๋ชจ๋“  ์„ค์ •๋“ค์ด ์ „ํ†ต์ ์ธ ์ „์—ญ ์œ„์น˜์— ๋ณด์ธ๋‹ค. ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์™€ ๊ฒฐ์† ๋งˆ์šดํŠธ๋ฅผ ์ด์šฉํ•ด์„œ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์— ์˜ํ–ฅ์„ ๋ผ์น˜์ง€ ์•Š๊ณ  ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ณ„ ์œ„์น˜์—์„œ ๊ธฐ๋ณธ ์œ„์น˜๋กœ ํŒŒ์ผ๋“ค์„ ์˜ฎ๊ธด๋‹ค.

-all ์˜ต์…˜์„ ์ง€์ •ํ•˜๋ฉด ๊ธฐ๋ช… ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ฐ๊ฐ์—์„œ ๋™๊ธฐ์ ์œผ๋กœ cmd๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. ์ผ๋ถ€์—์„œ cmd๊ฐ€ ์‹คํŒจํ•ด๋„ ๋งˆ์ € ์‹คํ–‰ํ•œ๋‹ค. ๊ฐ cmd ์‹คํ–‰๋งˆ๋‹ค ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ด๋ฆ„์„ ์ฐ๋Š”๋‹ค.

ip netns monitor - ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ด๋ฆ„ ์ถ”๊ฐ€๋˜๊ฑฐ๋‚˜ ์‚ญ์ œ๋˜๋ฉด ์•Œ๋ ค์ฃผ๊ธฐ
์ด ๋ช…๋ น์€ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ด๋ฆ„ ์ถ”๊ฐ€ ๋ฐ ์‚ญ์ œ ์ด๋ฒคํŠธ๋ฅผ ๊ฐ์‹œํ•ด์„œ ์ด๋ฒคํŠธ๋งˆ๋‹ค ํ•œ ์ค„์”ฉ ์ฐ๋Š”๋‹ค.
ip netns list-id - ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค id(nsid) ๋‚˜์—ดํ•˜๊ธฐ
๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค id๋Š” ์ƒ๋Œ€ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ฐ ์“ฐ์ธ๋‹ค. ์ด ๋ช…๋ น์€ ํ˜„์žฌ ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ nsid๋ฅผ ํ‘œ์‹œํ•˜๋ฉฐ ๋Œ€์‘ํ•˜๋Š” (`/var/run/netns`์—์„œ ์˜จ) iproute2 netns ์ด๋ฆ„์ด ์žˆ์œผ๋ฉด ์•Œ๋ ค ์ค€๋‹ค.

EXAMPLES

ip netns list
ํ˜„์žฌ์˜ ๊ธฐ๋ช… ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก ๋ณด๊ธฐ
ip netns add vpn
๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฆ„์„ vpn์œผ๋กœ ํ•˜๊ธฐ
ip netns exec vpn ip link set lo up
vpn ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์—์„œ ๋ฃจํ”„๋ฐฑ ์ธํ„ฐํŽ˜์ด์Šค ์˜ฌ๋ฆฌ๊ธฐ

SEE ALSO

ip(8)

AUTHOR

Eric W. Biederman์ด ๋งจ ํŽ˜์ด์ง€ ์ž‘์„ฑํ•จ.


2013๋…„ 1์›” 16์ผ

โš ๏ธ **GitHub.com Fallback** โš ๏ธ