Web 13

Node.js

Node.js 생활코딩 Node.js를 이용해 웹애플리케이션 만들기 강좌의 내용을 정리해본다. 기존 자바스크립트(Javascript)는 주로 클라이언트(Front-end)에서 사용되었다. 구글에서 V8엔진을 개발하고 오픈소스로 공개하면서 자바스크립트가 서버에서도 쓰이게 되었고, 여러 이유가 있겠지만 자바스크립트로 프론트엔드와 백엔드 둘다 커버할 수 있게 되어 인기를 끌게 되었다. 이번 포스트에서는 서버측에서 사용할 수 있는 자바스크립트의 핵심적인 기술인 nodejs에 대해서 알아보자. Node.js 특징 V8 Engine Event-driven Non-blocking IO Single thread 콜백함수 다른 함수의 인자로 사용되면서, 그 함수 안에서 특정 이벤트에 의해 다시 호출되는(called at..

Web/Nodejs 2020.01.06

Web Home Server

Web Home Server 1. 공유기 가정집에 노트북, 데스크탑, 스마트폰 등 기기들이 늘어남에 따라 각 기기마다 IP가 필요함. 기존에 통신사로부터 제공받은 Public IP address는 공유기가 갖게 되며, 각 기기들은 LAN을 통해 Private IP address를 할당받게 됨 공유기는 내부 네트워크에서 Gateway address(Router address)를 갖게 됨. 예) 192.168.0.1 Private IP address는 10.0.0.0~10.255.255.255, 172.16.0.0~172.31.255.255, 192.168.0.0~192.168.255.255 의 값임 2. NAT(Network Address Translation) Private IP address를 가진 기..

Web 2019.09.27

DNS (Domain Name System)

DNS(Domain Name System) 란? 아래 그림과 같이 URL을 입력하면 DNS 서버에서 그에 맞는 IP를 리턴해주고 그 IP를 이용해서 서버에 접근하는 루틴 모든 운영체제에는 hosts라는 파일이 있는데, 이 파일에 명시함으로 DNS를 통하지 않고 본인이 직접 host 이름을 명할 수 있다. - 예 ) localhost 127.0.0.1 host 파일은 보안에 굉장히 취약하므로 주의해야 한다. 피싱과 같은 공격에 당할 수 있으며, https를 통해 이러한 공격을 막을 수 있다. Public DNS 보통은 통신사에서 제공하는 ISP(Internet Service Provider)에 의해 DNS 서비스가 적용된다. 하지만 성능이나 프라이버시 문제로 인해 ISP를 쓰고 싶지 않다면 다른 Publi..

Web 2018.10.20