블로그
-
SSH 프로토콜 보안 원격 접속 | 공개키·ProxyJump·포트 포워딩·OpenSSH 실전
SSH의 키 교환·호스트 검증·사용자 인증 흐름을 짚고, Ed25519 키와 ~/.ssh/config, ProxyJump와 에이전트 포워딩의 차이, 로컬·원격 포트 포워딩, SCP/SFTP, Permission denied·호스트 키 변경·ssh-rsa 거부 같은 오류 대응을 OpenSSH 기준으로 정리합니다.
-
TCP 동작 원리: 3-way handshake, 흐름·혼잡 제어(CUBIC·BBR)와 소켓 디버깅
TCP 3-way handshake와 연결 종료, rwnd·cwnd 기반 흐름·혼잡 제어, Reno·CUBIC·BBR 알고리즘 차이를 설명하고 C++·Python·Node.js 소켓 예제와 RST·느린 전송 문제를 분석하는 디버깅 방법을 다룹니다.
-
TLS 프로토콜 심화 가이드 | 핸드셰이크·암호 스위트·TLS 1.3 키 유도
TLS 1.2와 1.3의 핸드셰이크 흐름 차이, 암호 스위트를 구성하는 키 교환·인증·대칭키·해시, 키 유도와 레코드 레이어, QUIC과의 결합, 인증서 체인 오류 진단과 mTLS 인증서 회전까지 설명합니다.
-
UDP 프로토콜 실전 활용 | 저지연·DNS·게임·스트리밍과 QUIC 연결
연결 없이 데이터그램을 보내는 UDP의 헤더와 체크섬 구조, DNS·RTP·게임·statsd에서 UDP를 택하는 이유와 반례, QUIC이 UDP 위에서 연결 ID와 TLS 1.3으로 신뢰성을 구현하는 방식을 소켓 예제와 함께 설명합니다.
-
WebRTC 프로토콜 실시간 통신 | 시그널링·ICE·STUN/TURN·DTLS·SRTP 실전
WebRTC 연결이 SDP 시그널링, ICE 후보 수집, STUN·TURN을 통한 NAT 통과, DTLS 핸드셰이크, SRTP 미디어 암호화 순서로 성립하는 과정을 브라우저 JavaScript와 Python aiortc 예제로 설명합니다.
-
npm install -g 권한 오류 EACCES: permission denied 해결 (우분투·맥, sudo 없이)
npm install -g가 EACCES: permission denied, mkdir /usr/local/lib/node_modules로 실패하는 이유와, sudo 대신 nvm 또는 npm prefix 변경으로 해결하는 방법, root 소유가 된 ~/.npm 캐시 복구, npx 활용, 윈도우 EPERM까지 다룹니다.
-
npm ERR! ERESOLVE unable to resolve dependency tree 해결: peer dependency 충돌 읽는 법과 --legacy-peer-deps 대신 할 일
npm install이 ERESOLVE unable to resolve dependency tree로 실패할 때 Found·peer 줄 읽는 법과 업그레이드, 호환 버전, overrides, --legacy-peer-deps, --force 순의 해결법과 위험을 설명합니다.
-
npm install 에러 해결 10가지: EACCES, ENOSPC, Timeout, peer dependency
npm install이 EACCES, ENOSPC, ERR_SOCKET_TIMEOUT, peer dependency 충돌, ERESOLVE, 404, node-gyp 빌드 실패, 캐시 손상, lock 파일 충돌, Windows 경로 길이 제한으로 실패할 때 원인별 해결책을 정리합니다.
-
nvm으로 Node.js 버전 변경하기: 윈도우(nvm-windows)·맥·리눅스 설치와 nvm 인식 안 됨 오류 해결
윈도우용 nvm-windows와 맥·리눅스용 nvm-sh는 별개 프로그램입니다. 설치, nvm use로 Node 버전 바꾸기, .nvmrc, nvm is not recognized·exit status 1·command not found 오류와 전역 패키지가 사라지는 이유를 설명합니다.
-
Eclipse Paho MQTT C 라이브러리: MQTTClient와 MQTTAsync, 콜백 스레드, 재접속, Last Will
libVDA5050++가 paho.mqtt.cpp를 거쳐 감싸는 Eclipse Paho MQTT C 라이브러리를 정리합니다. 라이브러리 4종과 빌드 옵션, 동기 MQTTClient와 비동기 MQTTAsync의 차이, 콜백이 도는 스레드와 메시지 해제 규칙, 접속 옵션 기본값, 자동 재접속과 재구독, 끊긴 동안의 발행, 영속성, TLS, 디버깅까지 VDA5050 로봇 클라이언트 예제로 다룹니다.