์ทจ์ฝ์ ์ด ๊ธ์ฆํ ์ง XNUMX๋
ํ(
AF_PACKET ์์ผ์ ์์ฑํ๊ณ ์ทจ์ฝ์ ์ ์ ์ฉํ๋ ค๋ฉด CAP_NET_RAW ๊ถํ์ด ํ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฌ์ฉ์ ๋ค์์คํ์ด์ค ์ง์์ด ํ์ฑํ๋ ์์คํ ์์ ์์ฑ๋ ์ปจํ ์ด๋์์๋ ๊ถํ ์๋ ์ฌ์ฉ์๊ฐ ์ง์ ๋ ๊ถํ์ ์ป์ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ฌ์ฉ์ ๋ค์์คํ์ด์ค๋ Ubuntu ๋ฐ Fedora์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ง๋ง Debian ๋ฐ RHEL์์๋ ํ์ฑํ๋์ง ์์ต๋๋ค. Android์์ ๋ฏธ๋์ด ์๋ฒ ํ๋ก์ธ์ค๋ ์ทจ์ฝ์ ์ ์ ์ฉํ ์ ์๋ AF_PACKET ์์ผ์ ์์ฑํ ์ ์๋ ๊ถํ์ ๊ฐ์ต๋๋ค.
ํด๋น ์ทจ์ฝ์ ์ tpacket_rcv ํจ์์ ์กด์ฌํ๋ฉฐ netoff ๋ณ์ ๊ณ์ฐ ์ค๋ฅ๋ก ์ธํด ๋ฐ์ํฉ๋๋ค. ๊ณต๊ฒฉ์๋ netoff ๋ณ์๊ฐ maclen ๋ณ์๋ณด๋ค ์์ ๊ฐ์ ๊ธฐ๋ก๋๋ ์กฐ๊ฑด์ ๋ง๋ค ์ ์์ต๋๋ค. ์ด๋ "macoff = netoff - maclen"์ ๊ณ์ฐํ ๋ ์ค๋ฒํ๋ก๊ฐ ๋ฐ์ํ๊ณ ์ดํ์ ๋ค์ด์ค๋ ๋ฐ์ดํฐ์ ๋ํ ๋ฒํผ์ ๋ํ ํฌ์ธํฐ๋ฅผ ์๋ชป ์ค์ ํ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๊ณต๊ฒฉ์๋ ํ ๋น๋ ๋ฒํผ์ ๊ฒฝ๊ณ๋ฅผ ๋์ด์๋ ์์ญ์ 1~10๋ฐ์ดํธ ์ฐ๊ธฐ๋ฅผ ์์ํ ์ ์์ต๋๋ค. ์์คํ ์์ ๋ฃจํธ ๊ถํ์ ์ป์ ์ ์๋ ์ต์คํ๋ก์์ด ๊ฐ๋ฐ ์ค์ ๋๋ค.
์ด ๋ฌธ์ ๋ 2008๋
XNUMX์๋ถํฐ ์ปค๋์ ์กด์ฌํ์ต๋๋ค. ๋ชจ๋ ์ค์ ํต์์ ๋ํ๋ฉ๋๋ค. ์์ ์ฌํญ์ ํ์ฌ ๋ค์๊ณผ ๊ฐ์ด ์ ๊ณต๋ฉ๋๋ค.
์ถ์ฒ : opennet.ru