
๐ก ์๊ฒฉ ์์คํ ์ ์ ์ํ์ฌ ๋ช ๋ น์ ์ ๋ ฅํ๊ณ ์ ์ดํ ์ ์๊ฒ ํด์ฃผ๋ ๋คํธ์ํฌ ํ๋กํ ์ฝ
โ ์ฃผ๋ก ์๊ฒฉ ์๋ฒ ๊ด๋ฆฌ๋ ๋คํธ์ํฌ ๋๋ฐ์ด์ค ์ค์ ์ ์ฌ์ฉ
โ ๋ชฉ์ : ์๊ฒฉ ์ปดํจํฐ์ ์ ์ํ์ฌ ๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ ์ ์ดํ ์ ์๋ ์ธํฐํ์ด์ค ์ ๊ณต
โ ๊ธฐ๋ฅ :
telnet <์๋ฒ IP ์ฃผ์> <ํฌํธ ๋ฒํธ>
//ex. telnet 127.0.0.1 2024
โ ํ๊ณ : windows์์๋ ๋ฒํผ ๋จ์๋ก ์ ๋ ฅ์ ๋ฐ์, ํ ๊ธ์์ฉ ๋ฌด์กฐ๊ฑด ์๋ฒ์ ๋ฐ๋ก ์ ์กํด๋ฒ๋ฆผ
โ ์๋ฒ์์ ๊ธ์ ํ๋์ฉ์ ๋ฐ์ ๋ฌธ์ฅ์ผ๋ก ์ฒ๋ฆฌํด์ฃผ๋ ค๋ฉด buffer์ ์ ์ฅํด๋์ด์ผ ํจ
(mac์์๋ ์ ์ ๋์)
const net = require("node:net");
const server = net.createServer((socket) => {
const clientIPAdress = socket.remoteAddress;
const clientPort = socket.remotePort;
console.log(
`ํด๋ผ์ด์ธํธ IP ์ฃผ์ : ${clientIPAdress}, ํด๋ผ์ด์ธํธ ํฌํธ ๋ฒํธ : ${clientPort}`
);
let buffer = "";
socket.on("data", (data) => {
const char = data.toString();
if (!/^\r?\n$/.test(char)) {
buffer += char;
}
if (/^\r?\n$/.test(char) && buffer.length >= 4) {
const content = buffer.slice(0, 1024);
socket.write(content, () => {
console.log("์
๋ ฅ๋ ๋ฌธ์์ด: ", content);
socket.end();
});
buffer = "";
}
});
socket.on("end", () => {
console.log("์๋ฒ ์ฐ๊ฒฐ ์ข
๋ฃ");
});
socket.on("error", () => {
console.log("socket error");
});
});
server.on("error", (err) => {
console.error("server error", err);
});
server.listen(
{
host: "0.0.0.0",
port: 2024
},
() => {
console.log("์๋ฒ ์ฐ๊ฒฐ ์์");
}
);