본문 바로가기

반응형

별걸다하는 IT/네트워크_소켓_통신

반응형
(12)
맥 어드레스란 무엇인가? IP주소와 맥주소(MAC address) 차이, 맥 주소 확인하는 법 - 네트워크 기초 안녕하세요. 양햄찌 블로그 주인장입니다. ㅎㅎ 오늘은 맥 주소(=맥 어드레스 = Mac Address)를 살펴보려고 해요. [목차] 1. 맥 어드레스란 무엇인가 2. 맥 주소는 왜 하드웨어, 물리적 주소라는 이름이 붙었을까 3. 맥 어드레스와 IP주소 왜 주소가 두개나 필요할까? 4. 맥 주소 확인하는 법 5. 맥 주소 구성 6. 맥 주소와 IP주소 차이 1. 맥 어드레스(Mac Address 맥 주소)란 무엇인가? 맥 어드레스는 컴퓨터간 데이터를 전송하기 위해 있는 컴퓨터의 물리적 주소입니다. 어라?? 컴퓨터 주소는 IP주소 아니였나요? 해당 IP주소를 가지고 있는 컴퓨터를 찾아가서 데이터를 주고 받는 줄 알고 있었는데요?! 맞습니다! 저 멀리 있는 컴퓨터와 통신하기 위해서는 IP주소를 사용하는 게 맞..
[네트워크 OSI ] 2계층 데이터링크 계층 Data Link Layer가 뭔지 궁금해?! 쉽게 설명해줄게~! 안녕하세요 양햄찌 블로그 주인장입니다. 다들 설날은 잘 보내셨나요?! 저번 포스팅에서 OSI 7계층을 한 번 훑어보고 그 다음에 1계층 물리계층에 다뤘었는데요~! 이번에는 2계층 데이터링크 계층에 대한 포스팅을 진행해보려고 합니다 기존에 살펴봤던 OSI 7계층 관련 포스팅을 보지 못하신 분들은 아래 링크를 참고해주세요~! ▼ OSI 7계층 모델 완벽 이해 전체를 보기! : jhnyang.tistory.com/194 [네트워크 network] OSI 7계층 모델 완벽 이해- 이유를 알고 개념을 이해하고 전체 보기(7 layer) 안녕하세요~~! 맨날 운영체제 리눅스 관련 글만 쓰다가 처음쓰는 네트워크 글이네요! 원래 네트워크도 굉장히 좋아했는데,,, 포스팅 쓰는게 아무래도 쉽게 되는게 아니다보니 미루고 미..
[네트워크 OSI 7계층] 1계층 물리계층에 대해 살펴보자. Physical Layer 피지컬계층! 안녕하세요 양햄찌 블로그 주인장입니다. 정~~말 오랜만에 돌아온 네트워크 포스팅이죠!! 저번시간에는 OSI 7계층이 뭔지! 이게 대체 왜 필요한건지!! 여러개로 대체 왜 쪼개놓은건지! 전체적인 그림을 훑어봤었어요. 오늘은 통신의 맨 아래 단계에 있는, 제 1계층에 대해 알아보겠습니다. 기존에 살펴봤던 OSI 7계층 이해하기 관련 포스팅을 아직 못보신 분들은 아래 링크를 참고해주세요 ▼OSI 7계층 모델 완벽 이해: jhnyang.tistory.com/194 [네트워크 network] OSI 7계층 모델 완벽 이해- 이유를 알고 개념을 이해하고 전체 보기(7 layer) 안녕하세요~~! 맨날 운영체제 리눅스 관련 글만 쓰다가 처음쓰는 네트워크 글이네요! 원래 네트워크도 굉장히 좋아했는데,,, 포스팅 쓰는게..
[네트워크] 패킷 트레이서 설치하기 - 장비 실습을 위한 무료 시뮬레이션 툴 다운로드~ 안녕하세요! 양햄찌 블로그입니다. 오늘은 패킷 트레이서를 설치해보는 시간을 가질거예요. 패킷 트레이서란 Packet Tracer? 자~~ 실제 네트워크는 다양한 장비들로 거대한 망을 이루고 있잖아요. 아무리 네트워크 이론을 공부한들 실습해보지 않으면 의미가 덜하겠죠. 또 기법이나 다양한 구축 이론을 배워도 직접 설정해보지 않으면 와닿지 않을수밖에 없죠! 그런데 네트워크를 구축하려면 당근 장비가 필요합니다. 그런데 이 장비들은 일개 개인인 우리가 구입해 실제 테스트하기에는 너무 비싸요... 스케일도 너무 커지고... 그래도 실습은 해보고 시픈뎅.. 그래서 시뮬레이션 툴을 사용하는겁니다. 이 툴은 다양한 서비스를 제공해서 이론과 실무까지 간접적으로 체험해볼 수 있어요. 패킷 트레이서는 네트워크 장비를 판매하..
[네트워크/소켓 프로그래밍] setsockopt, getsockopt 소켓옵션 상세설명, 세부 옵션 설정하기, 소켓 버퍼 SO_SNDBUF & SO_KEEPALIVE 안녕하세요! 오늘은 소켓 세부 설정하는 함수에 대해서 포스팅을 해보려고 합니다. 소켓 세부 설정이 꼭 필요한가요? 통신이 하나의 서버에 하나의 클라이언트만으로 이뤄지는 건 아니죠, 또 하나의 트랜젝션만 발생하는게 아니기 때문에, 네트워크 환경을 모두 예측하기는 힘들어요. 생각지도 못한 상황이 발생할 수도 있는! 보통 기본으로 다 설정이 되어있으니까 세부 설정 할 일이 없을 것 같겠지만, 세부설정을 해줘야만 하는 상황이 꽤 흔하게 온답니다. 오늘은 소켓의 세부사항을 조절하는 함수에 대해 알아볼거예요. 소켓 세부 사항 설정하는 함수 int getsockopt(int sock, int level, int optname, void* optval, socklen_t *optlen); int setsockopt(i..
[네트워크/소켓 C언어 프로그래밍] 주소 체계 저장 방법 sockaddr, sockaddr_in, sockaddr_in6 구조체 알아보기, 설명과 사용예제. 안녕하세요!! 저번시간에는 가장 기초적인 서버/클라이언트 프로그램을 작성해보았어요. 전체적인 흐름을 잡는데는 이해가 되었을 거 같으나, 내부적으로 코드 한줄 한줄이 궁금한 사람이 있을 것 같아서~~ 네트워크 프로그래밍 중 목적지를 찾는데 중요한 '주소 저장하기' 관련 구조체들과 사용법을 알아보려고 합니다. SOCKET ADDRESS STRUCTURES 소켓 주소 체계 알아보기 주소 구조체가 정의되어 있는 이유! 저번 포스팅에서 말했다시피 소켓주소는 'IP+포트'입니다. 즉 목적지에 찾아가려면 IP주소만 있어서는 안되고 포트 정보까지 필요해요! 그리고 IP주소도 IPv4이냐 IPv6이냐 등에 따라 IP길이가 다르죠?? IPv4는 32비트 주소체계를 사용하지만 IPv6는 128비트 주소체계를 사용하잖아요. ..
[소켓 프로그래밍 C언어] 기본적인 클라이언트 프로그램 만들기 (리눅스, 유닉스 편 client) 관련 함수 및 소스코드 안녕하세요! 저번 시간에는 기초적인 서버를 만들어서 제대로 동작하는지 테스트 하는 시간을 가졌었어요.ㅎㅎ 이제 서버가 있으니 오늘은 클라이언트를 만들어서 상호간 통신을 시켜보도록 합시다. 지난 포스팅이 궁금하신 분은 아래 링크를 참조해주세요! [소켓 프로그래밍 C언어] 기본적인 서버 프로그램 만들기 (리눅스, 유닉스 편) 안녕하세요~! 오늘은 기본적인 TCP 서버 프로그램을 작성해볼게요. 소켓 프로그래밍으로 간단한 채팅 서버를 만들어볼 생각인데, 찬찬히 진행해보도록 합시다. 소켓 프로그래밍이란? 오늘날 모든 컴퓨터는 소통을.. jhnyang.tistory.com 저번 포스팅에서 서버가 가지고 있는 최소한의 구조를 살펴보았죠? 이번에는 클라이언트를 만드는데 있어서 필요한 구조를 서버 것과 같이 연결지어서 ..
[소켓 프로그래밍 C언어] 기본적인 서버 프로그램 만들기 (리눅스, 유닉스 편) server 관련 함수 및 소스코드 안녕하세요~! 오늘은 기본적인 TCP 서버 프로그램을 작성해볼게요. 소켓 프로그래밍으로 간단한 채팅 서버를 만들어볼 생각인데, 찬찬히 진행해보도록 합시다. 소켓 프로그래밍이란? 오늘날 모든 컴퓨터는 소통을 하죠! 보통 내가 먼저 다른 노드(컴퓨터)에 요청을 하면 나는 고객(?)이니까 클라이언트가 됩니다. 그리고 반면에 다른 컴퓨터가 똑똑 두드리면, 신호를 받아서 데이터를 내려주는 역할을 서버라고 간략하게 정의해볼 수 있어요. 네트워크로 연결되어 있는 서로 다른 두 컴퓨터가 데이터를 주고받을 수 있도록 하는 것이 네트워크 프로그래밍, 즉 소켓 프로그래밍입니다. 소켓 socket? 소프트웨어적인 데이터 송수신 방법을 이미 운영체제에서 제공해주고 있는데 이게 '소켓(Socket)'입니다. 모든 운영체제에서 지..