네트워크 공부 & 실습/네트워크 실습 31

[Network] MTU 직접 ping 명령어로 실험해보기

1. MTU란 무엇인가? MTU(Maximum Transmission Unit)는 하나의 패킷이 한 번에 전송될 수 있는 최대 크기를 의미한다. 이 크기를 초과하는 데이터는 조각(Fragmentation)으로 나뉘어 전송되며, 이 때 네트워크 성능이나 안정성에 영향을 줄 수 있다.일반적으로 이더넷 환경에서의 MTU는 1500바이트이고, 이 안에는 IP 헤더(20바이트)와 ICMP 헤더(8바이트)가 포함되므로, 실제 데이터(payload)는 1472바이트까지 전송 가능하다고 한다. ( 출발지 목적지 정보 등 + 통신 문제 검출을 위한 데이터 + 진짜 전송할 데이터 ) 2. 실험 목표리눅스에서 ping 명령어를 이용해 MTU의 최대치 확인하기단편화를 허용하지 않은 상태에서 MTU를 넘는 패킷이 어떻게 처..

[Network] 내 컴퓨터에 IP가 두 개 있으면 뭐가 좋을까?

1. IP 주소가 두개, 혹은 그 이상이면 좋을까?최근 ip addr add 명령어를 공부하면서 하나의 인터페이스에 IP를 두 개 설정해봤다.그런데... 두 개 다 제대로 쓸 수 있는 걸까?, 또 두개를 쓰는게 진짜 의미있게 쓰여질까? 라는 의문이 들었다.이에 다시 직접 IP 주소를 추가해보고, 어떻게 쓰여질 수 있을지, 또 주의사항은 무엇인지 직접 실험해보기로 하자. 2. 개념 정리: 하나의 NIC에 여러 IP -> IP aliasing 이라고 한다.리눅스는 기본적으로 IP aliasing을 허용한다.IP를 추가하면 서브 인터페이스 없이도 여러 IP가 바인딩(추가) 된다. 이론적으로 추가할 수 있는 IP 의 갯수는 제한이 없다 하지만 실질적으로 운용을 한다면 과부화가 생길 수 있으므로 서버 자원에 ..

[Network] ip link 로 네트워크 인터페이스 상태 확인하기

네트워크 인터페이스의 목록이나, 상태를 보기위해 ( 네트워크 인터페이스에 할당된 ip 등) 리눅스 환경에서 주로 ifconfig 명령어를 사용해왔다. 하지만 ifconfig 보다 ip 명령어가 리눅스 네트워크 관리의 표준 이라는 소리를 주워(?) 듣고서는, ip 명령어를 익히기 위해 주제를 선정하였다.ip 명령어는 ip link, ip route, ip neigh 등, 인터페이스, 주로, 라우팅, ARP 까지 모두 커버 가능한 명령어이며, 최신 커널 기능( 네임스페이스, 고급 라우팅 정책) 도 지원한다고 한다. 1. ip link 명령어 컴퓨터로 인터넷을 사용하다가, 갑자기 인터넷 연결이 불안정 하거나, 되지 않을때 가장 먼저 의심해 봐야 하는 건 "컴퓨터의 네트워크 인터페이스가 제대로 동작 중 인가" ..

[Network] UFW로 리눅스 방화벽 설정 실습하기

> 서버를 운영하거나 특정 프로그램에 네트워크 연결을 시도하다 보면, 특정 포트를 열거나 (열려있는지 확인하거나), 방화벽을 꺼야 연결이 되는 상황이 많다. 또 웹서버가 실행되고 있다면 80, 443만 열고 나머지는 차단해야 보안 위협도 줄어든다고 한다. 리눅스에 기본 설치된 UFW는 복잡한 iptables 없이도 방화벽을 간편하게 구성할 수 있는 도구라고 하니, 실습하여 공부하도록 하자...! 1. UFW 란? Uncomplicated Firewall 의 줄임말로 "복잡하지 않은 방화벽" 이란 뜻이다.iptables처럼 복잡한 명령어 없이도, 간단한 문법으로 방화벽을 설정할 수 있도록 만든 도구이다.Ubuntu나 Debian 계열의 리눅스 배포판에서 기본 방화벽 인터페이스로 널리 사용된다. 2. ..

[Network] traceroute 명령어로 인터넷 경로 추적하기

>인터넷이 느리거나, 특정 사이트만 안 열릴 때 가장 먼저 의심할 수 있는 건 중간 네트워크 경로의 문제이다.traceroute 명령어는 패킷이 목적지까지 도달하기까지의 경로를 시각적으로 보여주는 도구이다.실무에서도 네트워크 지연, 우회 경로, 방화벽 구간을 파악하는 데 필수로 쓰인다고 한다. 따라서 직접 이 명령어를 사용해서, 패킷이 어떤 경로를 통해 돌아(?)다니는지 확인히보고자 한다. 1. 패킷의 동작과 traceroute 의 원리IP 패킷에는 TTL(Time To Live) 값이 있고, 이 값은 라우터를 하나 지날 때마다 1씩 줄어들어든다.TTL이 0이 되면 해당 라우터는 ICMP "Time Exceeded" 메시지를 보낸다.traceroute는 TTL을 1부터 늘려가며 전송해서, 각 구간의 라우..

[Network] ARP 에 대해 깊게 알아보자

ARP 와 RARP 는 리눅스 마스터 2급 2차 시험, 네트워크 관리사 2급 필기 시험을 공부하며, 각 시험당 항상 한 문제씩 꼭 출제된 문제라 개념은 매우 익숙한 프로토콜이다. ARP 를 통해 내 네트워크 (혹은 서버를 관리한다면 서버) 에 누가 연결되어 있는지, IP 와 MAC 주소가 어떻게 매핑되어 있는지 확인해보고, 실무에서는 어떤 상황에 어떻게 쓰이는지 알아보려 한다. 1. ARP 란?  ARP(Address Resolution Protocol)는 로컬 네트워크에서 IP 주소에 대응하는 MAC 주소를 찾는 프로토콜이다.예: 내 PC가 192.168.0.20로 패킷을 보내려고 할 때, 그 IP에 해당하는 MAC 주소를 알아야 전송할 수 있음.이 매핑 정보를 ARP 테이블에 저장해두고 필요할 때마다..

[Network] nslookup 과 dig, 뭐가 다를까?

- 주제의 선택 이유어제 dig 명령어에 대해서 실습해봤는데, dig 명령어와 비슷한 결과를 주는 명령어로 nslookup 이 있다는 것을 알게 되었다.두 명령어 모두 특정 도메인이 어떤 IP 를 가리키는지 확인하는 명령어이지만, 실제로 동작 방식과 실제 사용에는 차이가 있을 것 이다. ( 다르니까 명령어도 다르겠지...)이에 직접 명령어를 입력해보고 반환해주는 결과를 파악해서, 두 명령어가 실제로 어떤 차이가 있고 어떤 상황에서 쓰는 것이 적합한지 학습해보도록 한다. 1. nslookup 명령어는?nslookup nslookup 명령어는 DNS record를 조회할 수 있는 커맨드 라인 명령어이다. 명령어 뒤에 아무것도 입력하지 않으면 인자 값을 입력하라고 > 다음 줄로 넘어간다따라서 명령어와 함께..

[Network] dig 명령어는 왜 쓰는걸까?

1. 이 명령어는 왜 필요할까?도메인 주소를 입력했는데 사이트가 안 열릴 때, 또는 메일이 안 간다거나, CDN이 이상하게 작동할 때… 이럴 때 가장 먼저 확인해야 할 건 DNS가 제대로 작동하는지 여부 다.dig 명령어는 DNS 서버에 직접 질의하고 응답을 분석할 수 있는 도구로, 네트워크 문제를 추적하거나 도메인 설정이 잘 되었는지 확인할 때 실무에서 매우 자주 사용된다고 한다. -> 웹사이트에 접속하거나 메일을 보내는 거의 모든 인터넷 서비스는 DNS를 거친다. 그래서 DNS 오류는 곧바로 서비스 장애로 이어진다.  2. 실제 어떤 문제가 생겼을 때 dig 명령어로 문제를 파악할 수 있을까?  2-1. 웹사이트 접속 불가 시 -> A 레코드 오류 확인dig address.com A사용자가 도메인을 ..

[Network] PPTP VPN 설정 및 내부 클라이언트간 통신 (Synology NAS DS 218j)

1.  PPTP 연결을 시도하는 이유OpenVPN 방식으로 NAS에 VPN 서버를 구축했지만, 클라이언트 간 통신이 되지 않고 로그상 TUN/TAP invalid argument 오류가 반복적으로 발생해서 보다 가볍고 설정이 쉬운 PPTP 방식으로 우회 시도했다.Synology NAS의 VPN Server 패키지에서는 PPTP도 지원하고, 기본적으로 빠르게 설정이 가능하다는 장점이 있다.(공부한 VPN 개념이 실제로도 동작한다는 것을 보고 싶었다...) 2. 집안의 네트워크 구성 ipTIME 공유기가 인터넷 게이트웨이 역할 (NAT 및 DHCP 기능을 수행 중)R2 공유기는 내 방에서 브리지 모드로 작동 (192.168.0.x 대역 공유)NAS (192.168.0.20)와 데스크탑(192.168.0.27..

[Network] OpenVPN 트러블슈팅 기록 -1

1. 원인 파악 –  VPN 서버와는 연결되는데, 통신은 되지 않는다.Synology NAS에 VPN 서버(OpenVPN)를 구축하고,외부 클라이언트(우분투 데스크탑, 맥북)에서 VPN 접속까지는 잘 됐는데…VPN에 접속은 되지만클라이언트 간 ping이 안 되고인터넷 접속도 안 됐다처음엔 설정이 잘못된 줄 알았지만, 오히려 클라이언트가 NAS까지는 통신이 잘 되는데,VPN을 통해 다른 클라이언트로 가는 패킷이 NAS 나 라우터 에서 튕겨나가는 듯한 느낌이 들었다.2. 예상되는 문제별로 시도해본 것들(1) 라우팅 문제 의심 (서버의 설정파일 수정하기)push "route 10.8.0.0 255.255.255.0"push "route 10.8.0.0 255.255.255.0" push "redirect-ga..