※ 요약


리눅스 명령어 hostid는 현재의 호스트 정보를 16진수 형태로 보여준다. 이 정보는 호스트 고유의 번호로써, 다른 호스트들과 구별되며 주로 인터넷 주소를 부여할 때 사용된다.


참고로 호스트ID는 네트워크 내에서 워크스테이션, 서버, 라우터, 기타 TCP/IP 등의 각 서버들을 구분하는 역할을 한다. 각 호스트의 주소는 반드시 네트워크 ID를 기준으로 정확한 값을 가져야 하며 동일한 네트워크 안에서 유일해야 한다.



※ 경로


/usr/bin/hostid


※ 사용법


hostid [옵션]


※ 옵션


 옵션

 설명

 --help

 hostid 명령어의 사용법 출력

 --version

 hostid 명령어의 버전 정보 출력



※ 사용예


아래는 필자의 리눅스 시스템에서 간단히 사용해본 화면이다.


※ 관련 페이지





※ 요약


C++은 현재 표준 작업이 C++17까지 진행된 상태다. 그런데 컴파일러들마다 최신 문법 지원 상황이 제각각인데, msvc(visual studio)와 gcc 컴파일러를 사용하는 필자는 최신 버전이 나오거나 최신 문법으로 코드를 작성할때 지원 현황을 살펴보고는 한다. 독자들에게도 소개하니 필요할때마다 참고하기 바란다. 참고로 이번에 소개하는 문서는 최신 현황보다 조금 늦어질 수도 있다는 것을 염두해 두기 바란다.


최신 버전의 문법을 테스트해보고 싶다면 최신 버전의 컴파일러를 설치하는 것도 방법이지만 온라인 컴파일러를 이용하면 더더욱 좋으니 단순히 최신 문법 테스트라면 온라인 컴파일러를 이용해보기 바란다.



※ 설명


아래는 사이트에 접속하면 볼 수 있는 화면이다. 가장 최신인 C++17부터 나열되어 있으며, gcc와 Clang이 가장 많은 스펙(features)을 지원하는 것을 알 수 있다.



다음은 C++14다. 필자가 가장 자주 사용하는 Visual Studio(msvc)는 14.x은 되어야 거의 모든 것을 지원하는 것을 알 수 있다. 참고로 msvc 14는 Visual Studio 2015다.


마지막으로 C++11이다. C++11은 C++0x라고도 불렸었는데, 그 이유는 2010년이 오기 전인 01년~09년 사이에 표준 작업을 완료할 줄 알고 0x라고 불렀다가 2011년에 표준 작업이 완료되어 현재는 C++11로 불린다.





※ 요약


윈도우10에서는 창 끌어오기라고 해서 창을 모서리나 가장자리로 끌고오면 아래처럼 끌어올 수 있는 항목들을 표시해주는데, 필자에게 이 기능은 참으로 무의미하고 불편한 기능 중에 하나라 비활성화하는 방법을 알아보도록 하겠다.



※ 설정 방법


설정 방법은 간단하다. 먼저 윈도우 설정을 실행한다. 실행 방법은 시작 버튼을 누른뒤 톱니바퀴 모양을 찾아 누르면 된다. 그런뒤 시스템(디스플레이, 알림, 앱, 전원) 항목을 선택한다.



아래 화면이 나오면 멀티태스킹 -> 창을 끌 때 창 옆으로 끌어올 수 있는 항목을 표시합니다.의 스위치를 아래 이미지처럼 끔(Off)으로 하면 설정 완료다. 



※ 요약


윈도우10에 기본 탑재되어 있는 엣지(Edge) 브라우저의 테마를 바꾸는 방법이다. 테마라고 해봤자 고작 2개지만 의외로 모르는 분들이 많아 소개하고자 작성하니 참고하기 바란다.


※ 설정 방법


엣지 브라우저를 실행한뒤 자세히->설정을 선택하도록 한다.



그러면 우측 사이드에 설정 창이 나타나고 중간 쯤에 테마 변경이 있으니, 이곳에서 원하는 테마를 선택하면 된다. 참고로 아래 이미지는 어둡게를 선택한 화면이며, 나중에 테마가 더 추가될 수도 있을 거 같다.



※ 요약


도메인(호스트)명은 알고 있는데 ip주소를 모르거나 혹은 그 반대의 경우에 사용하는 명령어다. 호스트명을 이용하면 ip주소 뿐만이 아니라 하위 호스트명도 조회할 수 있다. 호스트는 시스템에 등록된 DNS서버를 이용하여 검색하는데, 다른 DNS 서버를 이용하고 싶다면 따로 지정해 줄 수도 있다.


※ 경로


/usr/bin/host


※ 사용법


host [옵션] [도메인 혹은 IP주소] [DNS서버]



※ 옵션


 옵션

 설명

 -a

 -t ANY와 같은 기능

 -d

 디버깅 모드로 출력

 -l zone

 zone 아래 모든 시스템을 출력

 -r

 반복 처리를 안 함

 -t type

 type을 지정하여 정보를 얻음

 (A:호스트ip주소, NS:검색한 호스트의 네임 서버 호스트명, PTR:도메인 네임 포인터, ANY:타입의 모든 정보)

 -w

 DNS 서버의 응답을 기다림

 -v

 자세한 정보 출력



※ 사용예


아래는 간단한 사용예다. host 명령어를 이용하여 네이버의 ip를 조회하여 보았고 아래와 같이 4개의 ip정보를 얻을 수 있었다. 당연한 얘기지만 네이버 같이 사용자가 많은 사이트는 여러 개의 서버를 이용한다.


아래는 kornet의 DNS 서버를 이용하여 조회해본 화면이다.



※ 요약


이번 포스트에서는 파이썬 다운로드 및 설치 방법에 대해 알아보도록 하겠다. 다운로드는 현재 날짜 기준으로 최신버전인 3.6 버전을 다운로드 받을 것이다.


※ 다운로드 링크


https://www.python.org/downloads/



※ 다운로드 및 설치 방법


상기의 다운로드 링크로 이동하면 아래와 같은 화면을 볼 수가 있고 원하는 버전을 다운받을 수가 있는데, 개인적으로 3.x 버전을 추천한다. 이유는 파이썬2는 2020년까지 지원 예정이며, 지원하는 라이브러리 또한 16년 5월을 기점으로 파이썬3가 더 많은 것으로 알고 있기 때문이다. 물론 파이썬2를 사용하는 곳이 아직 많으니 원한다면 둘 다 설치해도 상관없다.



다운받은 파일을 실행하면 아래와 같은 화면이 나온다. Add Python 3.6 to PATH에 체크한뒤 Install Now버튼을 누르도록 하자. 설치 장소를 바꾸고 싶다면 Customize Installation을 선택하면 된다.


설치가 진행중이다.


설치가 금방 완료되었다. Close버튼을 눌러 창을 닫아주자.


설치는 무사히 완료되었고, 테스트겸 콘솔과 Shell에 Hello World를 출력해보았다.



※ 요약


리눅스 명령어 ex는 라인 단위의 대화식 텍스트 에디터로써, 현재는 거의 사용되지 않고 vi에 내장되었다.


※ 경로


/bin/ex


※ 사용법


ex 파일명


※ 변천사


 ed

 유닉스 기본 행 단위 편집기

 ex

 발전된 형태의 ed(Extended ed)

 vi

 화면 편집기, ex의 명령들을 채택

 vi 클론

 vi가 발전된 형태로써 vim, elvis 등이 있음



※ 요약


윈도우10에서의 모니터 회전 설정 방법이다. 보통 모니터 회전 설정을 하는 이유는 아래 이미지처럼 모니터의 피봇 기능으로 모니터를 세워서 사용하는 사람들을 위해서다. 모니터 회전 설정 기능은 윈도우8부터인가 윈도우10부터 기본으로 지원되는 걸로 알고 있고, 그 미만 버전들은 따로 프로그램을 설치해서 회전 시켜야 한다. 참고로 아래 사진은 13년 10월 사진이다.



※ 설정 방법


설정 방법은 간단하다. 먼저 바탕화면을 마우스 우클릭하여 팝업 메뉴를 띄운뒤 디스플레이 설정 항목을 선택하도록 한다.



그럼 아래와 같은 화면이 나오는데 방향 이라는 옵션이 있고, 이 콤보 박스 옵션을 선택하면 모니터 회전 방향을 지정할 수 있다. 자신의 모니터를 어느 방향으로 회전 했느냐에 따라 선택해야 하는 옵션이 달라지는데, 직접 해보면 바로 알 수 있으므로 여기서는 더 이상 설명하지 않도록 하겠다.



※ 요약


이번에 소개할 내용은 ipTime 공유기에서 vpn(Virtual Private Network) 서버 기능을 설정하는 방법이다. 참고로 ipTime 공유기의 vpn 서버는 PPTP 방식이며, 필자는 CentOS 서버에 L2TP 방식의 vpn 서버를 운영중이다.


※ L2TP(Layer 2 Tunneling Protocol) 특징


- L2F 프로토콜과 PPTP 프로토콜을 결합한 형태

- PPP 지원

- 기밀성을 제공하지 않기 때문에 IPSec과 함께 사용

- 인증서를 통해 인증서비스 제공


※ PPTP(Point-to-Point Tunneling Protocol) 특징


- Microsoft와 스리콤 등 여러 회사가 RAS(원격접근서비스)에 기반하여 공동으로 개발

- PC와 PC가 1대 1방식으로 데이터 전송 -> 양방향 tunnel 형성

- RC4 알고리즘(암호화)으로 기밀성을 제공

- PPP 인증을 통해 사용자 인증 제공


※ 설정 방법


먼저 자신의 공유기에 접속하여 로그인한뒤 고급 설정->특수 기능->VPN 서버설정으로 이동한다.



그런 다음 아래와 같이 설정하면 되는데, 어렵지 않으니 차근차근 진행하면 된다. 

첫 번째로 동작 모드를 실행으로 한뒤 암호화 사용함으로 설정한뒤 적용 버튼을 눌러 저장을 한 번 해준다.

두 번째로 VPN 접속 계정과 암호, 할당 될 IP 주소를 설정해주면 된다. 계정과 암호는 원하는 것으로 하면 되며, ip 주소는 비어있는 주소를 지정해주면 된다.

다 설정하였으면 추가 버튼을 눌러 추가해도록 한다. 참고로 5개 까지 추가할 수 있다.


잘 추가된 것을 확인할 수 있다. 이제 아래에 만든 계정으로 접속을 하면 된다.





※ 요약


FTP를 이용하는 분들은 아시겠지만 ftp는 Active모드와 Passive모드가 존재한다. 일반적으로 사용할 때는 무엇이 더 좋다할 정도는 아니며 필자가 사용중인 CentOS7에는 기본적으로 액티브 모드가 기본 값이라 이번 포스트에서는 패시브 모드를 설정하는 방법을 알아보도록 하겠다.


※ Active 모드 방식 및 특징


- 모든 클라이언트에서 서버측 21번 포트로 접속을 시도하고 클라이언트가 사용할 두번째 포트를 서버에 통보

- 서버는 클라이언트에게 ack를 보내고 서버의 20번 포트는 클라이언트가 알려준 두번째 포트로 접속을 시도

- TCP/IP에서는 보통 클라이언트가 서버에 접속을 시도하는데 액티브모드에서는 서버가 클라이언트로 접속을 시도

- 만약 클라이언트 PC등에 방화벽이나 공유기가 있어 외부에서 접속을 허용하지 않는다면, 서버(20번포트) -> 클라이언트(1024~65535포트)의 접속이 정상적으로 되지 않아 FTP 로그인은 되지만 데이터 전송 및 디렉토리, 파일 리스트를 받지 못하는 문제가 발생


※ Passive 모드 방식 및 특징


- 모든 클라이언트에서 서버측 21번 포트로 접속(login)을 시도

- 서버는 클라이언트에게 서버에서 사용할 두번째 포트(1024~65535포트)를 통보

- 클라이언트는 다른 포트를 열어 서버가 알려준 이 포트로 접속을 시도하고 데이터를 전송

- 서버에서 클라이언트가 접속할 수 있도록 1024~65535 사이의 포트를 개방해야 하는 문제점이 발생할 수 있지만 접속 범위를 설정하므로써 문제 해결



※ 설정 방법


vi /etc/vsftpd/vsftpd.conf 라고 입력하여 vsftpd의 설정 파일을 열도록 한다.


설정 파일 제일 아래에 다음 항목을 추가 입력한뒤 저장하고 나오면 된다.

#pasv mode enable

pasv_enable=YES


#pasv port range

pasv_min_port=30000

pasv_max_port=30001



참고로 min 포트와 max 포트는 원하는 포트로 설정 가능하며 같은 값을 줄 경우 포트 고정이 가능하다. 설정을 저장하였으면 vsftpd 서비스를 재시작해주거나 재부팅해주면 설정이 적용되며, 시스템에 따라 방화벽 설정을 추가로 해줘야 하는 경우도 있다. 필자는 방화벽은 안해줘도 되서 여기까지만 작성하도록 하겠다.


+ Recent posts