1. 수업 소개
- 목표 : 공유기 사용 환경에서 웹서버 구동 방법.
- 공유기에 연결된 컴퓨터에 불특정 다수가 접속할 수 있게 함.
- 공유기에 연결된 컴퓨터를 웹서버로 이용하는 방법. 클라이언트에서 서버가 되는 것.
- IP 주소와 공유기
- IP 주소 등장
- 인터넷 위에 있는 컴퓨터 간에 통신하기 위해 IP 주소(전화번호 같은 것) 필요. 과거에 IPv4라는 통신규칙이 만들어졌고, 42억개의 주소 만들 수 있었음.
- 문제 : 근데 인터넷 연결 컴퓨터가 크게 증가하자, 주소 부족해서 새로운 가입자 받을 수 없게 됨.
- 해결책 : 주소의 형식을 새롭게 바꿈. IPv6. 주소가 2823양....? 개나 가능해짐.
- 공유기 등장
- 하지만 주소 바꾸기 힘들어서 IPv4 아껴씀. 그러기 위해 공유기를 통해 같은 IP 주소를 여러 대의 컴퓨터가 나눠씀.
- 공유기에 연결된 컴퓨터에 서버 설치해서 운영하는 것 어려움. network address translation, 공인 ip와 사설 ip, 포트 포워딩, 고정 ip와 유동 ip, 다이나믹 DNS 등 알아야 함.
- IP 주소 등장
2. 라우터(공유기)
- IP 주소 : 인터넷 프로토콜 어드레스
- 인터넷 사용하려면 컴퓨터가 IP 주소 갖고 있어야 함. 다른 컴퓨터와 통신하기 위해.
- 클라이언트가 웹사이트에 접속해서 요청한 것에 서버가 응답하려면 요청한 컴퓨터의 IP 알아야 하기 때문. 요청할 때 같이 전달됨.
- 통신사의 인터넷 케이블이나 와이파이를 통해 인터넷에 연결되는 순간 자동으로 IP 부여됨.
- 공유기
- 컴퓨터가 여러 대 있을 때는 통신사에서 회선을 추가로 계약하기보다, 공유기를 이용하면 됨.
- 그럼 IP도 공유하게 됨. 통신사에서 발급 받은 IP는 공유기의 것이 됨.
- 공유기 구조
- WAN : 혼자 떨어진 구멍. 통신사랑 계약해서 들어온 인터넷 케이블 꽂는 곳.
- LAN : 같이 붙어있는 구멍들. 각각의 장치들을 연결하는 곳.
- 안테나 : 스마트폰 등의 기계에서 와이파이 쓸 수 있게 해줌.
- 네트워크
- 지역 네트워크(Local Area Network) : 하나의 공유기를 중심으로 같은 네트워크에 묶여있는 것.
- 광역 네트워크(Wide Area Network) : 세계에서 가장 거대한 네트워크인 인터넷. 공유기는 지역 네트워크와 동시에 광역 네트워크에 소속됨.
- 공유기는 LAN과 WAN 두 네트워크 사이의 중계자, 교환원 같은 기계.
- Gateway/Router address
- 지역 네트워크 안에서 각 컴퓨터들은 공유기에 연결되는 순간 IP 부여 받음.
- 네트워크의 일부인 공유기에게도 IP 부여됨. 공유기에게 부여된 IP는 특수하고 중요하기 때문에 이렇게 부름.
- 공인 IP 주소(public IP address) : 광역 네트워크 안에서 공유기로 접속할 수 있게 해주는 IP. 전세계 누구나 접속 가능하다는 뜻.
- 사설 IP 주소(private IP address)
- 공유기에 연결된 각 컴퓨터들에게 부여된 IP는 내선 번호 같은 것. 지역 네트워크 안에서만 쓸 수 있는 IP 주소.
- IPv4 체계에 따라 존재하는 42억 개의 주소 중 192.168.0.0~192.168.255.255(65536개)는 사설 IP로 쓰임.
3. Network Address Translation
- NAT : 사설 IP 쓰고 있는 컴퓨터들이 외부 인터넷에 접속할 수 있게 해주는 기술.
- 클라이언트 입장에서 NAT 동작 방법 : 개별 컴퓨터가 위키피디아(외부 세계)에 접속하는 과정
- 게이트웨이 어드레스에 신호를 보내서 공유기가 받음.
- 공유기는 네트워크 밖(위키피디아)의 요청이므로 WAN 통해 외부로 보냄.
- 공유기 안에 요청 보낸 컴퓨터의 사설 IP 기록해둠.
- 요청한 컴퓨터의 사설 IP는 외부에서 접속할 수 없으므로 공유기가 NAT 기술을 이용해 요청한 데이터를 사설 IP에서 공유기의 공인 IP로 변경함.
- 요청 받은 위키피디아가 작업을 처리한 뒤 공용 IP에 해당하는 공유기에 응답함.
- 공유기는 받은 정보를 기록해둔 사설 IP를 쓰고 있는 컴퓨터에게 보냄.
- 그럼 서버 입장에서 NAT는 어떻게 동작하나?
4. IP 주소 알아내기
- 학습목표 : 라우터의 IP 주소를 알아내기. 지역 네트워크가 외부에서 어떤 IP 주소로 보여지는가.
- 윈도우
- 제어판 < 네트워크와 공유센터 : 접속상태 표현되는 곳에 케이블로 연결돼있으면 이더넷, 아니면 와이파이.
- 클릭 : 설정과 제어 방법 나옴.
- '자세히' 버튼 클릭
- "IPv4 주소" : 이 컴퓨터 지역 네트워크 상의 IP 주소(사설 IP)
- "IPv4 기본 게이트웨이" : LAN에서 라우터의 IP 주소(gateway address)
- 리눅스 : 콘솔
- ifconfig : "lo"와 "eth0(이더제로)" 나옴.
- eth0 < "inet addr:10.0.0.4" : 컴퓨터 IP 주소
- route
- default - Gateway : 이 컴퓨터의 게이트웨이(gateway address)
- ifconfig : "lo"와 "eth0(이더제로)" 나옴.
- 맥
- 환경설정 < 네트워크 : 초록색 점이 있는 게 현재 연결된 네트워크.
- 클릭 < 고급 < TCP/IP
- IPv4 Address : 컴퓨터의 IP 주소
- Route : 공유기의 IP 주소(gateway)
- 공유기 접속 : 가족용 공유기 사용할 경우
- 알아낸 공유기 IP 주소를 브라우저 주소창에 입력하면 공유기로 접속 가능.
- 라우터 환경설정 : 로그인하고 도구 들어가면 됨.
- 라우터에 연결된 컴퓨터에서 라우터에 관리자로 접속하여 라우터 동작 방법 등을 설정할 수 있음.
- WAN 상에서 라우터의 IP 주소, 공인 IP 확인
- 내부 IP 주소 : gateway address
- 외부 IP 주소 : 네트워크의 공인 IP
- 구글 검색하면 IP 알려주는 사이트 있음. 해당 서비스에 접속하면 우리가 어떤 IP 보냈는지 알려줌.
'TIL' 카테고리의 다른 글
[TIL-101] 생활코딩 WEB2-Home server 6~10 / 스파르타코딩클럽 코딩 용어 해설 (0) | 2022.01.18 |
---|---|
[TIL-100] 생활코딩 WEB2-Home server 5 / 스파르타코딩클럽 코딩 용어 해설 (0) | 2022.01.17 |
[TIL-98,102] 노마드코더 유튜브 클론코딩 #7.16~#7.18 (0) | 2022.01.16 |
[TIL-97~8] 노마드코더 유튜브 클론코딩 #7.9~#7.15 (0) | 2022.01.15 |
[TIL-96] 노마드코더 유튜브 클론코딩 #7.7~#7.8 (0) | 2022.01.14 |