Study/Computer Science

[Network] 8회차 스터디 - 서버 네트워크 기본

나리 집사 2023. 3. 9. 15:15
[Network] 8회차 스터디
『IT 엔지니어를 위한 네트워크 입문』 책을 읽고 정리하는 스터디입니다.
이번 주는 8장을 읽어온 후 스터디를 진행했습니다.
일시 : 2023년 3월 6일(월) 대면 진행
스터디장 : 우다현(C)
작성자 : 참여자 모두
참여자 : 우다현(C), 박지윤(L), 박현재(M), 김수민(M)

1. 우다현

새롭게 알게 된 점

  • 가장 기본적인 네트워크 설정 : IP 주소, 서브넷, 게이트웨이, DNS IP 주소
    • 다양한 정보를 많은 네트워크 장치에 설정하는 것이 번거로워 이런 필수 정보를 자동으로 설정해주는 DHCP 기술이 주로 사용됨
  • 서버의 라우팅 테이블
    • 네트워크 장비와 같이 서버에서도 외부 네트워크와 통신하기 위해 라우팅 테이블을 가지고 있음
    • 네트워크 어댑터를 두 개 이상 사용하는 경우 라우팅 테이블 조정 필요
    • 목적지, 서브넷, 게이트웨이, 인터페이스, 우선순위 설정
  • 네트워크 확인을 위한 명령어
    • ping
      • IP 네트워크를 통해 특정 목적지까지 네트워크가 잘 동작하고 있는지 확인하는 네트워크 명령어
      • ICMP 인터넷 프로토콜 사용. ICMP의 제어 메시지를 통해 여러 가지 네트워크 상태 파악 가능
    • tcping
      • tcping을 통해 ping을 확인하듯이 서비스 포트가 정상적으로 열려 있는지 확인할 수 있음
    • traceroute(리눅스)/tracert(윈도우)
      • 출발지부터 통신하거나 목적지까지의 네트워크 경로를 확인할 때 사용하는 네트워크 명령어
      • 중간 경로의 상세한 정보 얻음
      • IP 헤더의 TTL 필드 이용
    • tcptraceroute
      • 경로 정보뿐만 아니라 서비스 포트를 추가로 확인할 수 있음
    • netstat
      • 다양한 네트워크 상태 확인
    • ss
      • 소켓 정보 확인
    • nslookup
      • DNS에 다양한 도메인 관련 내용을 질의해 결괏값을 전송받을 수 있는 네트워크 명령어
    • telnet
      • 원격지 호스트에 터미널 연결을 위해 사용되는 매우 오래된 표준 프로토콜
      • 안전하지 않은 텔넷 대신 안전한 ssh를 사용하는 것이 좋음
    • ipconfig
      • 네트워크 설정 확인
    • tcpdump
      • 네트워크 인터페이스로 오가는 패킷을 캡처해 보는 기능의 명령어
      • 와이어샤크가 tcpdump와 같은 역할을 한다.
        • 이를 이용하면 패킷 캡처를 더 쉽게 할 수 있고, 캡처된 패킷이 필드별로 구분되어 표시됨. 패킷별 flow도 확인 가능. tcpdump로 캡처한 패킷을 파일로 출력한 후 와이어샤크로 불러와 볼 수도 있음

어려웠거나 이해하지 못한, 혹은 궁금한 점

추가 내용

이번 챕터를 읽는 목적을 상기하기 위해, 책의 서론을 발췌해왔습니다.

  • 앞 단원에서는 네트워크 장비를 연결하고 통신이 가능하도록 네트워크를 구성하는 방법을 배웠다. 하지만 네트워크가 아무리 잘 구성되더라도 네트워크 장비만으로는 서비스 제공이 불가능하다. 서비스를 사용자에게 제공하려면 서버와 네트워크 연결을 통해 통신이 되도록 구성하는 과정이 필요하다.
  • 서버에서 네트워크를 이해하고 연결하는 과정에서 문제가 발생하곤 한다. 서버 쪽에서 네트워크를 이해하면 네트워크 상태를 판단할 수 있고 네트워크 쪽에서는 서비스에 대한 이해가 깊으면 문제 해결이 훨씬 쉬울 것이다. 서비스 가동 중에 장애가 발생한다면 문제점을 신속히 파악해 해결해야 하므로 상호 기술 이해가 중요하다.
  • 상호이해를 돕기 위해 네트워크과 직접적인 관련이 있고 네트워크에도 영향을 미칠 수 있는 서버의 네트워크 설정에 대해 다루어볼 것이다.
  • 네트워크 엔지니어와 서버 엔지니어 모두 상호 영역의 접점을 이해하는 계기가 될 것이다.

 

2. 박지윤

새롭게 알게 된 점

net-tools : ifconfig, arp, hostname, netstat, rarp, route, plipconfig, slattach, mii-tool, iptunnelm ipmaddr 등 사용 가능

디폴트 라우팅이 없으면 원격지 네트워크와 통신은 불가능하고 네트워크 카드가 속한 로컬 네트워크 통신만 가능하다 (삭제해보고 싶네요,,ㅋㅋㅋㅋ)

명령어를 입력해 설정된 라우팅 정보는 서버가 재부팅되면 사라진다

라우팅 정보를 출력할 때 와일드카드 사용이 가능하다

tcping을 이용하면 포트 번호가 열려있는지 확인할 수 있다. (맥에서도 사용이 가능합니다!)

traceroute는 3계층 정보에 의한 경로 추적이므로 2계층 이하의 스위치 장비 추적은 불가능하다

traceroute에서 보안상의 이유로 중간에 있는 보안 장비에서 icmp 메시지나 udp 패킷을 차단하는 경우나 중간의 라우터 장비에서 자신의 IP가 노출되는 것을 막기 위해 traceroute icmp 메시지에 대해 응답하지 않을 때는 응답시간이 아닌 ***로 표기된다.

traceroute는 경로 추적만 가능하며 서비스를 위한 서비스 포트가 정상적으로 열리는지 확인할 수 없다. → 이를 한번에 확인할 수 있는 명령어가 tcptraceroute(tcptrace)이다

man netstat 하면 netstat 명령어 대신 다른 명령어를 사용할 것을 권고하고 있다..!

telnet으로 특정 서비스가 열려있는지 확인할 수 있다

APIPA(Automatic Private IP Addressing) : DHCP에서 IP 주소를 정상적으로 할당받지 못했을 때, 호스트 컴퓨터 스스로 IP 주소를 자동으로 할당해주는 기능

tcpdump: 네트워크 인터페이스로 오가는 패킷을 캡처해 보는 기능의 명령어

어려웠거나 이해하지 못한, 혹은 궁금한 점

노트북에는 보통 유선/무선이 둘 다 된다. 그렇다면 노트북 안에는 유선/무선 NIC 2개가 존재할까? 만약 유선/무선 NIC가 2개 존재한다면 내부적으로 라우팅 테이블 설정이 다 되어 있는 것일까?

확장 ping을 이용해 출발지 IP를 지정해서 ping을 보낼 수 있다 → 공격에 사용될 수 있는 여지가 있지 않나?

추가 내용

centOS, ubuntu 리눅스 설정에 대해 소개 되어있어서 이외에 리눅스 배포본 비교해본걸 찾아봤습니다.

리눅스 배포본을 비교해 보자 | 인사이트리포트 | 삼성SDS

 

게이트웨이(gateway) :  컴퓨터 네트워크에서 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 컴퓨터나 소프트웨어를 두루 일컫는 용어, 즉 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트

리눅스 네트워크 관리에 필요한 <ifconfig> 사용법 11가지 | 와탭 블로그

 

3. 박현재

새롭게 알게 된 점

어려웠거나 이해하지 못한, 혹은 궁금한 점

추가 내용

https://askubuntu.com/questions/1103937/explain-in-linux-and-unix-everything-is-a-file

 

4. 김수민

새롭게 알게 된 점

  • 5장에서 모호했던 점들을 8장에서 새롭게 알게 되었어요.
    • (314쪽) 라우팅 테이블에서 인터페이스는 서버의 네트워크 카드를 말하고 라우팅에서 어떤 물리적인 경로로 패킷을 내보낼지 설정합니다.
  • 기존에 ping, nslookup, ipconfig 명령어들 정도만 알고있었는데 tcping, traceroute, tcptraceroute, netstat, ss, telnet, tcpdump 명령어들에 대해 새롭게 알게 되었어요.
  • ssh는 원격지 접속 프로토콜이며 암호화되어 통신 내용을 감청할 수 없어 telnet보다 높은 보안성을 제공한다는 점을 새롭게 알게 되었어요.

어려웠거나 이해하지 못한, 혹은 궁금한 점

  • p313 하이퍼바이저

추가 내용

 

스터디 내용

1. 질문

1. 노트북에는 보통 유선/무선이 둘 다 된다. 그렇다면 노트북 안에는 유선/무선 NIC 2개가 존재할까? 만약 유선/무선 NIC가 2개 존재한다면 내부적으로 라우팅 테이블 설정이 다 되어 있는 것일까?

  • 지윤 : 노트북 안에 NIC가 여러개 존재하긴 하는 것 같아요 ! Ethernet Adapter와 Wi-Fi 등을 눌렀을 때 서로 다른 MAC 주소를 가지고 있네요.

  • 현재 : https://support.hp.com/kr-ko/document/c06424349 실제 판매되고 있는 hp의 zbook인데요, 스펙을 보면 무선 랜카드가 존재하고 이더넷용 LAN 컨트롤러 모델이 존재하는 것을 볼 수 있습니다. 유무선용 랜카드가 하나씩 있는 경우도 있거나 무선용 랜카드에 LAN 컨트롤러 하나씩 달려있는 경우도 있는것 같아요!

 

2. 확장 ping을 이용해 출발지 IP를 지정해서 ping을 보낼 수 있다 → 공격에 사용될 수 있는 여지가 있지 않나?

  • 다현 : 핑 폭주 DDoS 공격에 대해 설명하는 글이 있어서 찾아왔어요. 확실히 공격에 사용될 수 있는 여지가 있는 것 같아요. https://www.cloudflare.com/ko-kr/learning/ddos/ping-icmp-flood-ddos-attack/
  • 현재 : ping의 경우에는 ICMP 프로토콜을 사용하고 있는데, 책에서 소개해준 것처럼 악용될 소지가 있어 토폴로지 구성 상에서 외부로부터 서버보다 먼저 연결되어있는 방화벽에서 이 프로토콜로 들어오는 패킷은 차단하는 정책으로 공격을 예방합니다. ICMP 프로토콜 자체를 차단하기 때문에 해당 서버로 ping을 보내면 당연히 요청시간이 만료되었다는 메시지가 뜨지만, 실제 연결은 문제가 없습니다.

 

3. 리눅스가 윈도우와는 달리 네트워크 설정에 관한 부분이 모두 파일로 관리 되는데 왜 그렇게 설계된 지 궁금했습니다. / 혹은 리눅스는 파일로서 네트워크 설정이 관리되는데 윈도우는 어떻게 저장되는지 궁금했습니다.

  • 다현 : 리눅스에서는 네트워크 설정 관리를 파일로 하지만, 윈도우에서는 GUI에서 정보(해당 어댑터에서 사용할 IP 주소, 서브넷, 게이트웨이, DNS 정보 …)를 설정합니다. 그리고 관련 자료를 찾아봤을 때, GUI를 통해 설정한 정보는 자체 경로로 저장되고 내용은 리눅스 계열 처럼 텍스트 형태가 아닌 경우가 대부분이라고 하네요. 스크립트로 관리하고 싶다면 netsh interface와 같은 명령어를 통해 스크립트를 만들어 네트워크 설정을 바꿀 수도 있죠! https://answers.microsoft.com/ko-kr/windows/forum/all/windows-네트워크/737b5d45-d796-459d-90de-efa48d103d36
  • 지윤: 다른 이야기지만 리눅스는 모든게 파일로 관리되기 때문에 볼륨을 마운트할 때도 파일로 관리할 수 있어서 신기했던 기억이 있네요. 기기를 연결할 때도 마찬가지로 신기했었어요.

 

4. 보낼 게이트웨이에 대한 정보는 Static이 아닌 Dynamic Routing의 경우 이미 라우터에 Next Hop에 대한 정보가 남아 있을 텐데 굳이 지정해주어야 하는 이유?

  • 수민 : 스태틱 라우팅은 5장에 의하면 다이렉트 커넥티드를 제외하고 라우팅 우선순위가 가장 높으므로, 굳이 아예 특정한 게이트웨이로 경로를 관리하고 싶다면 지정하는 것 같아요.

 

5. p313 하이퍼바이저

 

2. 모두 함께 읽어본 자료

1. centOS, ubuntu 리눅스 설정에 대해 소개 되어있어서 이외에 리눅스 배포본 비교해본걸 찾아봤습니다.

리눅스 배포본을 비교해 보자 | 인사이트리포트 | 삼성SDS

 

2. 게이트웨이(gateway) :  컴퓨터 네트워크에서 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 컴퓨터나 소프트웨어를 두루 일컫는 용어, 즉 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트

리눅스 네트워크 관리에 필요한 <ifconfig> 사용법 11가지 | 와탭 블로그

 

3. 스마트폰 패킷 캡쳐하기

 

3. 상점

  • 가장 정리를 잘 해온 사람 : 박현재 (C)
  • 가장 토론에 적극적으로 참여한 사람 : 박지윤 (L)

 


 

8주차를 끝으로 네트워크 스터디가 마무리 되었습니다.

8주 동안 책의 반 이상을 읽었고, 매주 책을 꾸준하게 읽고 토론하면서 많은 것을 배웠습니다.

스터디를 통해 모두가 함께 성장할 수 있었다고 생각합니다.

 

가장 상점을 많이 받은 스터디원은 박지윤(L) 님입니다. 감사의 마음을 담아 기프티콘을 전달했습니다.

성실하게 참여해준 스터디원 6명 모두에게 정말 수고했고 고맙다는 말을 드리고 싶습니다.😊

 

추가로, 책을 끝까지 읽기 위해 2차 스터디를 진행할 예정입니다.

많은 지원 부탁드립니다.🙌