본문 바로가기
Coding/WebApp

인터넷

by 그냥그렇듯이 2017. 8. 29.
반응형

모든 저작권은 <생활코딩>의 생산자인 <egoing>님에게 있습니다.

문제시, 비공개로 전환하겠습니다.


<인터넷>

 ip와 도메인 /인터넷 (자가서버 운영)

IP 주소 (Internet Protocol Address)
통신을 위해서는 전화를 하는 쪽과 받는 쪽 모두 IP가 있어야한다.

<접속장소 IP 얻는 법>
Terminal 실행 -> PING opentutorials.org 입력 ->  opentutorials.org의 IP값을 GET

<내 IP 주소 얻는 법>
Google 에서 my ip 검색 후 GET

<IP주소의 단점>
기억하기 어렵다. => Domain Name이 존재.
Domain name = IP 주소

컴퓨터는 도메인을 통해서 서버에 접속할 수 없다. => 도메인은 사람을 위한 것이고, 컴퓨터는 IP를 통해서만 접속할 수 있다.

<Domain Name System, DNS>

생활코딩의 도메인 수업
접속: http://opentutorials.org/course/228/1450

 IPv6

 1. 자신의 IP를 알아낸다. / 구글 my ip 검색
2. 자신의 IP로 접속해본다.

<공인IP vs 사설IP>

IP의 숫자는 몇 개일까?
IP는 0.0.0.0 ~ 255.255.255.255로 구성되어있다. 이는 42억개의 경우의 수다.
하지만 이는 전혀 많은 수가 아니다. 컴퓨터+스마트폰+사물인터넷(IoT)를 연결한다면 IP수 42어개는 턱없이 모자르다.

이를 해결하기위한 <첫번째 방법은 바로 IPv6>이다.
이는 가장 근본적인 해결책이다.

IPv4: 222.109.62.43
IPv6: 2201:0db8:85a3:08d3:1319:8a2e:0370:7334
IPv6는 2^128에 해당하는 IP주소를 만들어낼 수 있다. 이는 다음의 숫자와 같다.

하지만, IPv6는 당장 적용될 수 없다. 현재는 IPv4와 IPv6가 함께사용되는 과도기적 상황이다.

<방법2: 사설IP (Private IP)>
공유기란?
공유기 IP 때문에 사용자가 설치한 Server의 IP로 접속할 수 없다.
예) 대표번호와 내선번호

가정의 공유기를 사용한다면 사설IP(웹서버)에 접근할 수 있을것이다. 하지만, 회사등에서는 가능하지 않을 수 있다.
Port Forwarding을 활용해 공유기IP를 사설IP로 넘기는 것이다.

PORT란?
"웹브라우저를 통해서 서버에 접속한다" => https를 활용하는 것이기 때문에 브라우저는 http를 생략한다.
http://222.109.62.43:80을 쓴다.
url주소에 http://222.109.62.:80를 쓰면 :80이 자동생략된다. (Mac의 경우, :8080을 써야된다.
http://222.109.62:80은 "해당 아이피의 컴퓨터에 http라는 프로토콜로 접속하고 80번 포트를 이용하겠다."라는 뜻이다.
웹서버는 기본적으로 :80번 포트에 깔리게된다.

Mac에서 :8080를 적는 이유는 맥이 :80포트에 웹서버를 깔지못하기 때문이다. 즉, 80번포트는 이미 다른 프로그램에 의해 사용중이라는 것.
이는 명령어를 통해 수정할 수 있다.

MySQL의 경우에도 마찬가지다.

Port Forwarding은 다음의 그림 설명과 같다.


이를 위해서는 공유기 설정에 들어가 222.109.62.43:80으로 들어온 것은 ->192.168.0.2:80(80 - Mac의 경우)으로 가도록 설정해야한다.

 공유기에서 포트포워딩 설정하기

 1.공유기 관리자에 접속하자. (WAN 포트 - Internet INPUT, 공인IP)
2. LAN포트 - Private IP (사설 IP)

3.공유기 회사마다 관리자 설정방법은 조금씩 다르다. 여튼 설정방법과 관련된 키워드를 적는다.
4. 포트포워드 설정
5. 포트포워드 설정을 알기위해서는 웹서버로 사용될 컴퓨터의 사설IP를 알아야한다.
6. 대개의 경우, 포트포워드 설정에 "현재 접속된 PC의 IP주소로 설정"이라는 옵션이 있다.
7. 다른 방법으로는 터미널시작 후 "이더넷 어댑터 이더넷" 혹은 "무선 ..."  항목의 IPv4를 사용한다.
8. 프로토콜 : [외부포트 - 공유기와 통신사 사이의 포트] [내부포트 - 공유기와 서버가 깔린 컴퓨터 사이 포트] / Mac의 경우 외부: 80, 내부:8080

 절대경로, 상대경로

 

절대경로: 나의 위치와 무관하다.
상대경로: 나의 위치에 따라서 달라진다.

/ = 루트 (최상위 디렉토리)
./ = 현재
../ = 부모

상대경로를 쓰는 경우 - 하나의 사이트안에서 그 사이트안에 있는 파일,이미지 등으 로드하는 경우, 동일한 사이트내의 다른 링크로 이동하는 경우
절대경로를 쓰는 경우 - 사이트와 상관없는 이미지 가져오기 혹은 링크 연결하는 경우

유동IP와 DDNS

 유동IP (Dynamic IP) - 통신사들은 한정된 IP를 가졌기 때문에 이를 유동적으로 분할하여 사용한다. => 고정IP사용을 위해 이용료를 조금 더 낼 수 있다.

DDNS (Dynamic DNS)
Dynamic DNS시스템은 계속해서 IP정보를 DNS시스템에 넘겨준다. 때문에 유동IP의 변화에 따라서 IP주소를 갱신하게 된다.
사용자는 도메인 네임으로 접속한다.
DNS는 도메인과 호스트의 IP를 지속적으로 동기화하는 작업이다.

<DDNS 설정방법>
1. 공유기별로 다르다. (펌웨어 버전 확인)
2. 공유기 관리자 접속
3. 고급설정 -> 특수기능 (DDNS설정)

<구입한 도메인을 DDNS로 사용하기>
http://freedns.afraid.org


댓글