본문 바로가기

내 이야기

(678)
'ip route' 명령어 알아보기 : 라우팅 테이블 조회/추가/삭제 등 Today Key : ip , route, 라우팅, 테이블, next-hop, 추가, 제거, 삭제, iproute, via, 리눅스Linux에서 라우팅을 다룰 때 예전에는 route, netstat -rn 같은 도구를 많이 썼지만, 요즘 실무 표준은 iproute2 패키지의 ip 명령입니다. 그 중에서도 ip route는 “이 호스트가 목적지로 가는 패킷을 어디로 보낼지”를 결정하는 라우팅 테이블(Route Table) 을 조회하고 제어하는 핵심 명령어입니다. 이번 포스팅에서 ip route의 기본 개념부터, 실무에서 자주 쓰는 옵션을 함께 정리해봅니다.ip route가 다루는 것: “커널 라우팅 테이블”Linux 커널은 목적지 IP를 보고 라우팅을 수행하는 ip route는 이 커널 라우팅 정보를 확..
AWSKRUG 네트워크 소모임 : 라우팅 발표 자료 AWSKRUG 네트워크 소모임에서 진행했던 라우팅 발표 자료입니다.
AWSKRUG 네트워크 소모임 - NAT 발표 자료 AWSKRUG 네트워크 소모임에서 진행했던 NAT 발표 자료입니다.
TCP Handshake에서 보이는 window size / wscale 값, win 값 TCP Window size란?TCP에서 window size(win)는 수신 측이 “내가 지금 더 받을 수 있는 버퍼 여유”를 광고(advertise)하는 값입니다.win이 크다 → 수신 측 버퍼 여유가 많다 → 송신 측이 더 많이 보낼 수 있다win이 작다 → 수신 측 버퍼 여유가 적다 → 송신 측이 천천히 보내야 한다 즉, win은 네트워크 장비의 “대역폭” 같은 개념이 아니라, TCP 수신 버퍼(흐름 제어) 관점의 값입니다. 왜 wscale(Window Scaling)이 필요할까?TCP 헤더의 window 필드는 16비트라서 최대가 65,535입니다.요즘 환경(클라우드, DC, 고대역폭/지연 구간 등)에서는 64KB로는 부족할 수 있기 때문에, TCP는 Handshake(SYN / SYN-ACK)..
AWS Regional NAT Gateway Today Keys : aws, vpc, nat, gateway, regional, network, architecture, high-availability이번 포스팅은 AWS에서 25년 11월 19일에 새롭게 발표한 Regional NAT Gateway에 대한 소개입니다.기존 NAT Gateway는 특정 가용영역(Availability Zone)에 종속적인 자원이기 때문에각 가용영역별로 NAT Gateway를 구성하여, 가용성을 확보하거나 가용영역을 교차하여 사용을 했습니다.Regional NAT Gateway는 가용 영역이 아닌 리전 종속적인 자원으로가용 영역 전체에 걸쳐 자동으로 확장/축소되며 동작하는 NAT Gateway입니다.AWS Regional NAT Gateway란?하나의 NAT Gate..
Linux에서의 이름 해석(Name Resolution) 경로 이해하기 Today Keys : linux, name, resolution, domain, query, dns, ip, glibc, nss, resolver, 질의리눅스(Linux)의 이름 해석(Name Resolution) 경로구분내용동작 방식시스템 해석기 경로gblic + NSS(Name Service Switch)운영체제의 표준 경로로, /etc/nsswitch.conf 규칙에 따라서 지정된 순서대로 질의 수행DNS 직접 질의라이브러리에서 자체 질의 수행운영체제 표준 경로와 상관 없이, /etc/resolv.conf에 선언된 DNS 서버로 직접 질의 수행 시스템 해석기 경로 (glibc + NSS)운영체제의 공식 이름 해석(Name Resolution) 체계/etc/nsswitch.conf 파일의 hosts..
TLS SNI(HTTP SNI) 테스트 환경 구성 및 동작 방식의 이해 Today Keys : tls, sni, https, encrypt, certbot, aws, 인증서, ssl, server, name, indication 이번 포스팅에서 TLS SNI 테스트 환경을 구성하고 테스트하면서 TLS SNI에 대한 동작 방식 이해를 해보는 포스팅입니다. 먼저 포스팅에 앞서서 용어부터 정리하면, 흔히 “HTTP SNI”라고 부르지만, SNI(Server Name Indication)는 HTTP 기능이 아니라 TLS ClientHello(핸드셰이크) 확장입니다. TLS 자체만으로는 “클라이언트가 어느 서버 이름(도메인)에 접속하려는지” 서버가 알 방법이 없어서, 가상호스팅(한 IP에 여러 HTTPS 사이트)에서 문제가 생기는데, SNI가 그 정보를 전달해줍니다. 이번 포..
RHEL에서의 DNS Cache, 그리고 systemd-resolved 이야기 2 이번 포스팅은 지난 포스팅이었던 RHEL에서의 DNS Cache, 그리고 systemd-resolved 이야기 1 에서 다루지 못한 몇 가지 개념 내용을 몇 가지 정리해 보려고 합니다. glibc (GNU C Libriary)리눅스 시스템에서 대부분의 프로그램이 사용하는 표준 C 라이브러리대부분의 사용자 명령어(ping, ssh, curl 등)는 내부적으로 glibc를 통해 시스템 콜(System Call) 을 호출즉, 운영체제 커널과 애플리케이션 사이의 표준 인터페이스 계층 역할을 수행getaddrinfo()는 glibc에 포함된 함수로, 내부적으로 NSS(Name Service Switch) 모듈을 호출하여이름 해석(Name Resolution, 이름 조회) 을 수행함 glibc NSS (Name S..