소개
<그림과 작동 원리로 쉽게 이해하는 네트워크, 위키북스 > 출간 예정
<Do it! 첫 컴퓨터 구조, 이지스퍼블리싱> 출간 예정
강의
수강평
- 네트워크, 그림으로 이해하자
- 네트워크, 그림으로 이해하자
게시글
질문&답변
전송 계층에서 연결 확립 및 종료 단계 관련 질문
네 캡슐화/역캡슐화된 상태로 전송됩니다.3-way handshake와 4-way handshake 과정 자체가 코드 비트(플래그)의 각 6비트 중 특정 비트가 활성화돼서 SYN, ACK, FIN 등의 데이터 영역이 0에서 1로 바뀐 채 전송되는 것인데 데이터를 주고 받는 과정에서 각각 활성화되는 코드 비트의 영역이 다르기 때문에 근본적으로 헤더에 적용되는 데이터가 다릅니다. 따라서 예를 들어 A컴퓨터와 B컴퓨터의 3-way handshake의 과정에서 A컴퓨터에서 캡슐화를 통해 SYN 비트가 1로 활성화된 데이터를 전송했다면B컴퓨터에서 역캡슐화를 통해 SYN 비트가 1로 활성화된 데이터를 받았음을 확인하고B컴퓨터에서 캡슐화를 통해 다른 세그먼트로 SYN비트+ACK비트가 1로 활성화된 데이터를 전송합니다.A컴퓨터에서 역캡슐화를 통해 SYN비트+ACK비트가 1로 활성화된 데이터를 받았음을 확인하고A컴퓨터는 캡슐화를 통해 마지막으로 ACK 비트가 1로 활성화된 데이터를 전송합니다.이렇게 예시를 들 수 있겠네요 :)2.https://osi-model.com/presentation-layer/ 해당 링크가 잘 정리되어 있어서 도움이 되실 것 같습니다. 세션 계층은 '세션'이라는 단어의 의미와 연관지어서 생각해보면 편한데, 세션이라는 단어 자체가 컴퓨터 과학에서는 대화나 연결 상태를 의미하기 때문에 응용 프로그램 간의 세션(대화)을 관리하는 계층이라고 보시면 됩니다. 또 표현 계층도 '표현'이라는 단어의 의미와 연관지어서 생각해보면데이터가 어떻게 '표현'되는지, 즉 어떠한 방식으로 인코딩되고 해석되는지를 관리하는 계층으로 생각하시면 됩니다. 그래서 데이터의 압축이나 암호화가 이루어지는 계층이 이 표현 계층입니다 🙂 참고로 제 강의에서는 초반 osi모델, TCP/IP 모델 편에서 언급했듯이'응용 계층' 자체를 7계층만이 아닌 5~7 계층 모두 묶어 표현했고, 다른 저자분들마다 각 계층을 따로 분리하거나 혹은 저처럼 편의상 5~7계층을 묶어서 응용 계층으로 표현하시기도 하니 참고해주세요!조금 더 말씀드리면,OSI모델 자체가 ISO(국제 표준화 기구)에서 제정이 되었는데,ISO에서 공식 자료를 유료로 판매하고 있습니다.참고해보시면 도움이 되실 것 같습니다 🙂 표준: ISO/IEC 7498-1 https://www.iso.org/obp/ui/#iso:std:iso-iec:7498:-1:ed-1:v2:enhttps://webstore.iec.ch/preview/info_isoiec7498-1%7Bed2.0%7Den.pdf
- 0
- 2
- 293
질문&답변
DNS 챕터 관련 질문
안녕하세요, 제하님! 질문 해주셔서 감사합니다. 이런, 강의 내용에 오류가 있었군요 ㅠㅠ 진심으로 죄송합니다. 제하님께서 말씀해주신 것처럼 root- TLD - SLD - subdomain -host name입니다. cafe.naver.com에서 naver는 SLD(second level domain)에 해당하고, cafe와 search는 subdomain에 해당합니다.(현재 네이버 카페는 도메인이 바뀐 것 같네요.) 제가 DNS 계층 구조에서 SLD를 누락해서 혼동이 오신 것 같습니다. 참고로 www는 서브 도메인이자 호스트 이름으로도 불립니다. '등록되어 있지 않으면' 이라는 말의 의미는 예를 들어 www.inflearn.com의 IP 주소를 찾는다고 가정할 때 .com 이나 inflearn.com의 DNS 서버에는 www.inflearn.com의 IP 주소는 등록되어 있지 않다는 의미입니다. 이 경우 DNS 질의 과정은 계속해서 해당 도메인 이름에 대한 정보를 가지고 있는 하위 계층의 DNS 서버로 이동합니다. 각 DNS 서버는 자신의 책임 영역 내에 해당 정보가 있는지 확인하고, 없을 경우 다음 단계의 서버로 질의를 전달합니다.금주에서 다음주 내로 영상 새로 촬영하고 수정하도록 하겠습니다 🙂 감사합니다.
- 0
- 1
- 285
질문&답변
TCP 흐름 제어에서 슬라이딩 윈도우 기법 질문
안녕하세요, 제하님! 질문주셔서 감사합니다. A의 윈도우 크기 250은 B의 윈도우 크기가 250이여서 맞춰져서 그런 건가요? 아니면 그냥 가정으로 250이라고 한 건가요?=>현 강의에서는 각자 가정으로 윈도우 크기를 설정한 것이고, 각각의 윈도우 크기는 여러 요인에 따라 설정이 달라집니다. 2.확인 응답이 ACK 101인 이유는 100 byte 데이터 크기를 보냈기 때문에 이에 +1 값을 보낸 것이라 이해하면 될까요?=>네, 맞습니다 🙂 여기서 ACK 번호는 성공적으로 받고 '다음에 기대'하는 byte의 시퀀스 번호를 나타냅니다. 따라서 +1이 되는 거죠.예를 들어 어느 맛집에서 10번째까지 손님을 받았다면 그 다음 손님은 11번째 손님부터 대기해야 하니까요! 3.A에서 보낸 데이터 50 바이트를 B가 버퍼에 저장하고, 어플리케이션 프로세스에서 50바이트를 처리했다고 했는데, 이는 A로부터 마지막으로 받은 데이터를 사용된 게 아닌 그보다 먼저 버퍼에 저장된 데이터를 사용했다고 이해하면 될까요?=> 아뇨, 영상에서의 예시는 A로부터 마지막으로 받은 데이터를 사용했습니다 :) 보통 버퍼는 선입선출(FIFO)방식으로 데이터를 처리하기는 하지만 때에 따라 마지막으로 받은 데이터를 처리하기도 합니다. 4.어플리케이션 프로세스가 사용했다고 말씀하신 후 윈도우 크기가 이동되었는데, 좌측 경계선은 저장되면 왼쪽에서 오른쪽으로 이동되고, 데이터가 사용되어 오른쪽 경계선이 오른쪽으로 갔다고 이해하면 될까요?=> 네, 맞습니다 🙂 슬라이딩 윈도우 기법에서 좌측 경계선은 확인된 데이터에 따라 오른쪽으로 이동하는데, 이는 수신지에서 해당 데이터를 읽었고, 더 이상 그 공간을 필요로 하지 않기 때문입니다. 자막에서 오타가 발견되었군요..! '혼잡 회피'가 맞는 표현입니다.조만간 추후에 수정하도록 하겠습니다. 알려주셔서 감사합니다 :)
- 0
- 2
- 289
질문&답변
3-way handshake와 4-way handshake 과정 중 패킷 단어 질문
안녕하세요, 제하님! 질문 주셔서 감사합니다.말씀하신대로 '패킷'이라는 용어는 3계층에서의 데이터 단위로 사용되고, '세그먼트'라는 용어는 4계층에서의 데이터 단위로 불립니다.여기서 덧붙일 점이, '패킷'이라는 단어는 네트워크에서 전체적인 데이터를 지칭하는 용어로도 사용되기도 합니다. 3-way handshake에서 교환되는 패킷들은 세그먼트가 맞지만 1.해당 세그먼트가 네트워크 계층에서 IP 패킷으로 캡슐화되기 때문이거나2.범용적으로 데이터를 나타내는 용어라고도 봐주시면 좋을 것 같습니다.비슷한 예시로, 해당 강의에서는 응용 계층에서의 프로토콜 데이터 단위는 메시지로 칭했지만, 다른 문서나 책에서는 통상 데이터라고도 불리기도 합니다. 또 다른 예시를 들자면 응용 계층을 지칭하는 부분이 7계층일 때도 있지만 어떤 문서에서는 세션 계층, 표현 계층, 응용 계층을 모두 포함하는 용어로도 쓰듯이 유동적으로 쓰이는 용어라고도 봐주시면 좋을 것 같습니다.전체적으로 결론을 짓자면 이는 용어 사용의 유연성을 고려해주시면 좋을 것 같습니다 :)
- 0
- 1
- 342
질문&답변
A클래스 ip 가 교안안에 126.255.255.255 인데 영상엔 127.255.255.255로 대있어요
안녕하세요, 수강생님! 알려주셔서 너무 감사합니다. 혼동을 드려 죄송합니다.금주 내로 영상 수정하도록 하겠습니다.좋은 하루 되세요! :)
- 0
- 1
- 276
질문&답변
질문드립니다:)
안녕하세요, boyjeong님! 질문주셔서 감사합니다 : )질문하신 내용을 뜯어보면 다음과 같이 나눠 답변해볼 수 있을 것 같습니다.1.내 pc에서 네이버의 서버와 통신을 할 때 당연히 내 pc에도 공인ip가 있어야 통신이 가능한데요....=>대부분의 가정 내 네트워크에서 사용하는 IP주소는 '사설 IP'주소지만 네이버의 서버와 통신할 수 있는 이유는 가정 내 '공유기 라우터'가 '공인 IP'주소를 부여받아 사설 IP와 공인IP간의 통신을 중개해주기 때문입니다.정확히는 [내 PC에도 공인 IP가 있어야 통신이 가능하다]보다는 [내 PC와 연결된 공유기 라우터의 공인 IP 주소를 통해 통신한다]라는 표현이 적절하지 않을까 싶습니다.2.그럼 사설 ip 192.168.....으로 시작되는 것 말고 공인ip는 임시적으로 isp에서 자동으로 할당을 해주는 건가요???=>우선 사설 IP 주소의 범위에 대해서 다음 공식 문서에 근거해 말씀드릴 수 있습니다. : )그리고 아래 범위를 제외한 ip주소가 공인 IP 주소의 범위라 생각하시면 됩니다. 따라서 FindIP 사이트에서 명시된 내 ip 주소는 내 pc와 연결된 공유기의 공인 ip 주소가 명시되기에 아래 범위를 제외한 ip 주소가 뜰 겁니다.https://datatracker.ietf.org/doc/html/rfc1918IANA(Internet Assigned Numbers Authority)에서 예약한 사설 IP 주소 범위, 사설 인터넷을 위한 IP 주소 공간의 다음 세 블록: 10.0.0.0 - 10.255.255.255(10/8 프리픽스) 172.16.0.0 - 172.31.255.255(172.16/12 프리픽스) 192.168.0.0 - 192.168.255.255(192.168/16 프리픽스)네. isp에서 라우터(공유기)에 공인 IP 주소를 부여해줍니다 : )3.https://www.findip.kr/ 곳에서 내 공인ip를 확인 할 수 있는데 이게 제 pc의 실제 공인 ip인건지요??=>FindIP 에서 확인한 IP 주소는 공유기를 사용하는 환경에서 공유기에 할당된 공인 IP 주소입니다.'내 공인 ip 주소'라는 표현보다는 '내 PC와 연결된 공유기가 isp로부터 부여받은 공인 ip 주소'라는 표현이 적절합니다 :)따라서 한 집안 내에 여러 대의 PC 혹은 스마트폰이 같은 공유기를 통해 인터넷에 접속할 경우, 그 가정 내 모든 기기가 동일한 공인 IP 주소를 사용하여 외부와 통신하게 됩니다.4.그렇다면 이 주소로 원격데스크톱 연결이 가능한건지요???=> 만약 로컬 네트워크 내에서 원격 데스크톱 연결을 시도할 경우에는 사설 IP 주소를,인터넷을 통해서 원격 데스크톱 연결을 시도할 경우에는 공인 IP 주소를 시도해야 하는 것으로 알고 있습니다.또한 후자의 경우 보안의 문제가 우려되기 때문에 포트 포워딩 설정, 보안 설정 등 주의를 기울여 주세요! :)
- 0
- 2
- 364
질문&답변
강의교안
(사진)안녕하세요, 공부하자님!강의 교안은 대시보드 -> 커리큘럼 -> 각 섹션당 첫 번째 강의에 단원당 교안을 첨부해놓았습니다.감사합니다!
- 0
- 1
- 400
질문&답변
질문드립니다.
안녕하세요, boyjeong님! 질문주셔서 감사합니다.질문 내용의 핵심을 살펴보면 크게 두 가지로 나눠볼 수 있는 것 같습니다.1.NAT서버를 거치지 않으면 윈도우 원격 데스크톱 서비스를 이용할 수 없는가?2.크롬의 원격 데스크톱은 자체 NAT 서버가 있기에 아이디와 패스워드를 공인 IP로 매핑하는가?1.NAT서버를 거치지 않으면 윈도우 원격 데스크톱 서비스를 이용할 수 없는가?먼저 원격 데스크톱 프로토콜(RDP)에 대해 언급할 필요성이 있는 것 같습니다. 원격 데스크톱 프로토콜(RDP)는 마이크로소프트에서 개발했고, 이 프로토콜은 원격 데스크톱 서비스에서 주로 사용되는 프로토콜입니다. 참고링크:https://learn.microsoft.com/ko-kr/troubleshoot/windows-server/remote/understanding-remote-desktop-protocol마이크로소프트의 RDP에 대한 공식 문서에서는 NAT를 거치는 필요성에 대해 직접적으로 언급하지는 않지만, 원격 데스크톱을 통해 인터넷을 통해 다른 네트워크에 있는 컴퓨터에 접근하려면 일반적으로 공인 IP 주소가 필요하며, 이 공인 IP 주소를 확보하는 방법 중 하나가 NAT를 사용하는 것입니다.이때 예외로 같은 네트워크에 있는 컴퓨터끼리 통신을 하거나 VPN을 사용할 경우 NAT 서버를 거치지 않아도 이용할 수 있습니다. : ) 2.크롬의 원격 데스크톱은 자체 NAT 서버가 있기에 아이디와 패스워드를 공인 IP로 매핑하는가?위와 달리 구글 크롬 원격 데스크톱은 약간 다른 방식으로 동작합니다. 구글 크롬 원격 데스크톱는 NAT를 통해 직접적인 연결을 생성하는 것이 아니라, 구글의 서버를 통해 연결을 중계합니다. 구글 원격 데스크톱 서비스는 NAT를 우회하거나 피하기 위한 STUN/TURN과 같은 기술을 사용합니다.이때, STUN(Server Traversal Using Relay NAT)과 TURN(Traversal Using Relays around NAT)은 NAT 통과를 돕는 프로토콜입니다.구글 크롬 원격 데스크톱이 STUN/TURN 프로토콜을 사용하는 것에 대해 직접적으로 공식 문서가 나와 있는 것이 아니지만, 구글의 여러 제품과 서비스는 STUN/TURN 프로토콜을 사용한다는 것은 널리 알려져 있습니다. 아래 문서를 참조하시면 도움이 될 것 같습니다 : )https://datatracker.ietf.org/doc/html/rfc5766https://webrtc.org/getting-started/turn-server?hl=ko따라서 구글 크롬 원격 데스크톱은 사용자의 아이디와 패스워드를 공인 IP로 직접 매핑한다기 보다, 대신 STUN/TURN 서버를 통해 연결을 중계하고 각 사용자의 구글 계정 정보와 해당 계정이 인증한 컴퓨터 정보를 사용합니다. 이를 통해 NAT 없이도 '우회'하여 연결을 생성하는 것으로 추측이 되네요 :)
- 0
- 2
- 358
질문&답변
이해가 안되어 질문드립니다.
안녕하세요, 질문자님! 웹서버와 개인 PC 간의 통신은 대부분 '유니캐스트' 방식으로 이루어집니다. '브로드캐스트'와 '멀티캐스트'는 상황에 따라 특정 용도로 사용되지만, 일반적인 인터넷 통신에서는 사용되지 않습니다. 브로드캐스트나 멀티캐스트 방식의 경우 특정 상황에서 사용되기에 일반적으로 인터넷을 통한 패킷 전송에서는 사용되지 않습니다. 브로드캐스트 방식은 일반적으로 DHCP에서 TCP/IP 설정 정보를 모든 기기에 전송할 때,멀티캐스트 방식은 일반적으로 온라인 스트리밍이나 온라인 게임, 소프트웨어 업데이트 시 해당 전송 방식이 이용됩니다.AI 인턴의 답변 중 일부가 불완전할 수 있습니다.일반적으로 라우터들은 브로드캐스트 또는 멀티캐스트 방식을 통해 패킷을 전달하지 않습니다. 라우터는 라우팅 프로토콜을 이용하여 최적의 경로를 찾고 이 경로를 통해 패킷을 '유니캐스트' 방식으로 전달합니다.라우터의 라우팅 테이블에 주소가 없다면 해당 주소까지의 경로 정보를 알 수 없으므로 패킷을 전달할 수 없습니다. 이 경우 '라우팅 프로토콜'을 통해 라우팅 정보를 갱신하거나, 일부 환경에서는 기본 경로를 이용하여 패킷을 전달할 수도 있습니다.이때 '라우팅 정보를 갱신'하는 것도, '기본 경로'를 이용하여 패킷을 전달하는 것도모두 '유니캐스트'방식입니다.관련 공식 문서 링크는 https://datatracker.ietf.org/doc/html/rfc2328https://datatracker.ietf.org/doc/html/rfc4271를 참조하시면 좋을 것 같습니다 : )
- 0
- 2
- 257
질문&답변
라우터 ip 부여 (라우터 강의)
안녕하세요, 창헌님! 질문주셔서 감사합니다.정확히는 지정된 서브넷의 범위에 따라 달라진다고 보시면 됩니다. (사진)예를 들어 서브넷이 192.168.10.0 /24일 경우 서브넷마스크는 위 그림과 같이 10진수 : 255.255.255.0 이며, 2진수 : 11111111.11111111.11111111.00000000 입니다.이때, 네트워크 ID는 프리픽스 표기법에 따라 24bit고, 호스트 ID는 8bit입니다.호스트 ID가 8bit이므로 192.168.10.0의 네트워크 범위에서 2^8=256 개인 호스트 ID가 사용가능하다는 뜻입니다. 즉, 192.168.10.0~192.168.10.255까지 256개의 호스트 주소를 할당할 수 있게 됩니다.다만 여기서 변수가 있는데요,192.168.10.0은 네트워크 범위의 주소를 나타내는 주소고,192.168.10.255는 브로드캐스트 주소입니다.따라서 실제 호스트에 할당할 수 있는 주소는 192.168.10.1~192.168.10.254까지이며, 이는 실질적으로는 256-2=254개의 IP주소를 사용할 수 있다는 얘기입니다. 감사합니다. 좋은 하루 되세요 ! ^^
- 1
- 1
- 393