love_tolty의 등록된 링크

키자드에 등록된 총 186개의 포스트를 확인하실 수 있습니다.

Naver Blog

Ubuntu 24.04.2 LTS에서 Kubeadm으로 쿠버네티스(Kubernetes) 최신버전(v1.33.0) 설치 및 기본 클러스터 구성하기

이번 포스팅은 2025년 5월 11일 기준, 최신 LTS 버전의 Ubuntu OS 환경에서 쿠버네티스(Kubernetes, 이하 K8s) 배포 도구인 Kubeadm을 통해 마찬가지로 최신버전의 K8s를 직접 설치하고, 기본 클러스터 구성까지 완료하는 것을 목표로 정리했다. 실제 본 포스팅을 통해 활용된 OS 및 관련 SW의 버전과 최신 Release 정보는 아래 표와 같으며 그럼 바로 포스팅 시작하겠다!!! Category SW / OS Version Release Debian Linux OS Ubuntu 24.04.2 LTS 2025-02-20 Container Cluster Platform Kubernetes v1.33.0 2025-04-23 Container Runtime containerd v2.1.0 2025-05-08 runc v1.3.0 2025-04-30 K8s Network Plugin cni-plugins v1.7.1 2025-04-30 Calico v3.30.0

Naver Blog

Ubuntu 24.04.2 LTS에서 Kubesparay로 쿠버네티스(Kubernetes) v1.33.3 버전 설치 및 기본 클러스터 구성하기

지난 포스팅에선 Kubeadm을 통한 쿠버네티스(Kubernetes, 이하 K8s) 최신버전인 v1.33.0 버전('25년 7월 기준)을 설치하는 내용을 정리했다면, 이번 포스팅에서는 Ansible 기반의 오픈소스 K8S 배포 도구인 Kubeapray를 활용해 K8S v1.33 버전을 설치해보고자 한다. 이번 포스팅을 통해 설치되는 OS 및 관련 SW의 버전과 최신 Release 정보는 아래 표와 같으며 그럼 바로 포스팅 시작하겠다!!! Category SW / OS Version Debian Linux OS Ubuntu 24.04.2 LTS Container Cluster Platform Kubernetes v1.33.3 Container Runtime containerd v2.1.3 K8s Network Plugin cni-plugins v1.4.1 Calico v3.29.4 1. K8S 설치 전 사전 준비 1-1. K8S 설치버전 및 배포도구 선정 현재 ('25년 7월 27일

Naver Blog

Unihertz(유니허츠)의 LTE Android 13 스마트 폰 『Jelly Star』 파손 액정 직접 자가 교체하기

평소에 독특한 해외 직구 스마트폰 단말을 자주 이용하는 편인데, 어쩌다보니 기존에 메인으로 사용하던 직구 단말이 파손되 자가 수리를 하게되면서, 원래 계획에는 없었지만 국내 서비스 센터 이용이 어려운 해외 직구단말을 사설 업체가 아닌 개인이 직접 자가수리를 통해 어떻게 유지 보수 하는지를 정리해보면 의미가 있겠다 싶어 이렇게 갑작스레 계획에도 없던 포스팅을 하게 되었다. 스마트폰 관련 포스팅은 이번이 처음인데 기회가 된다면 다른 스마트폰에 대한 분해나 수리 이력도 간간히 정리해보도록 하겠다. 그럼 포스팅 시작! 1. 사건의 발단 Unihertz社는 중국의 스마트폰 제조회사로 굉장히 유니크한 디자인과 기능을 가진 제품을 주로 출시한다. 그 중에서 화면은 3인치로 아주 작지만 성능은 꽤 좋은 LTE 스마트폰인 Jelly Star가 2023년 출시되었는데, 디지털 디톡스(Digital Detox)를 목적으로 해외 직구 단말임에도 불구하고 지금까지 해당 스마트폰을 메인으로 사용하고 있다.

Naver Blog

[안내][첨부]『개념이 보이는 네트워크 기초』 개정판, 『오픈소스로 알아보는 SDN 입문』 신간 동시 발매 (※실습 예제 코드 첨부)

2024년 첫 포스팅 글을 이렇게 공지사항으로 올리네요. 불과 3년전 이맘때, 네트워크 입문자부터 관련 실무자까지 쉽게 읽고 활용할 수 있는 네트워크 기본서적으로 출간했던 『개념이 보이는 네트워크 기초』 서적이 올 초 많은 독자님들 덕분에 절판이 되었습니다. 이 자리를 빌어 굉장히 감사합니다.! 그리고!!! 개념이 보이는 네트워크 기초 개정판이 2024년 4월 4일 오늘 출간되었습니다. 개정판에는 오타 수정외에도 기존 네트워크 기술 내용을 좀 더 보완하였으며, 6세대 이동통신 시스템인 6G에 대한 내용도 추가되었습니다. 게다가 여기서 끝이 아닙니다.!!! 이번에는 개정판만 출간된게 아니라, 네트워크 인프라 관리 기술 중 하나인 SDN(Software Defined Networking) 기술 활용서로 오픈소스로 알아보는 SDN 입문 이라는 신간 서적도 함께 출간되었습니다!! 와!!! 특히, 해당 서적에는 다양한 오픈소스 소프트웨어를 활용한 SDN 실습 예제들도 소개하고 있는데, 해당

Naver Blog

Container Network(컨테이너 네트워크)의 User Space Acceleration Model(사용자 공간 가속 모델) 소개

지난 2024년 12월 13일, 한국컴퓨터통신연구회 주관으로 한국과학기술회관에서 열린 [Kubernetes Container Networking Technology Workshop] 내용을 이번에 시리즈로 정리하고자 한다. 워크숍 발표자료 및 실제 발표내용은 외/내부적으로 규정상 공개가 불가능하여 직접 워크숍 내용을 직접 이해하고 직접 이미지를 그려서 파악한 내용을 아래와 같이 정리했다. 일단 본 포스팅에서는 먼저 Container Network에서 Pod가 실행되는 User Space에서의 네트워크 패킷 처리를 가속화하기 위한 모델에 대해 소개해보겠다. 0. 참조사항 본 포스팅 내용은 기본적으로 리눅스 커널 네트워킹 스택(Linux Kernel Networking Stack)에 기반하여 컨테이너 네트워크 환경에서의 패킷의 병목구간과 이에 대한 가속모델에 대해 설명하고 있다. 그래서 전반적으로 커널 네트워킹 스택에 대한 이해도가 필요한데, 일단 아래 포스팅을 참조하여 커널 네트워킹

Naver Blog

Container Network(컨테이너 네트워크)의 Kernel Space 패킷 가속 위한 eBPF Acceleration Model(eBPF 기술 기반 가속 모델) 소개

지난 포스팅에 이어서 이번에는 2024년 12월 13일, 한국컴퓨터통신연구회 주관으로 한국과학기술회관에서 열린 [Kubernetes Container Networking Technology Workshop]에서 소개된 Container Network에서의 가속 모델 중 Kernel Space에서의 네트워크 패킷 처리를 가속화하기 위한 모델인 eBPF Acceleration Model 에 대해 소개해보겠다. 0. 참조사항 본 포스팅 내용은 기본적으로 리눅스 커널 네트워킹 스택(Linux Kernel Networking Stack)에 기반하여 컨테이너 네트워크 환경에서의 패킷의 병목구간과 이에 대한 가속모델에 대해 설명하고 있다. 그래서 전반적으로 커널 네트워킹 스택에 대한 이해도가 필요한데, 일단 아래 포스팅을 참조하여 커널 네트워킹 스택에 대한 내용을 먼저 숙지하고 본 포스팅 내용을 읽어보길 권장한다. TCP/IP 4계층 모델 기반으로 리눅스 커널 네트워킹 스택(Linux Kerne

Naver Blog

TCP/IP 4계층 모델 기반으로 리눅스 커널 네트워킹 스택(Linux Kernel Networking Stack) 이해하기

OSI 7계층 모델은 네트워크 통신방식을 이해하는데 이론적으로 가장 이상적이면서 기본적인 네트워크 모델을 정의하고 있지만 실제 네트워크 환경에서는 복잡하고 비효율적인 측면이 없지 않아 있다. 그래서 실제 TCP/IP 기반의 인터넷 통신환경에서는 기존 OSI 7계층 모델과 달리 4계층으로 단순화되어어 통해 실용성과 효율성을 높인 TCP/IP 4계층 모델을 기반으로 하고 있다. 그래서 이번 포스팅에서는 실제 Linux 커널 네트워킹 스택에서 패킷이 처리되는 과정과 이를 TCP/IP 4 계층과 매치하여 정리해보고자 한다. 그럼 포스팅 시작!! 1. TCP/IP 4계층 모델 이란? TCP/IP 4계층 모델의 첫시작은 1970년 냉전시대, 미국 국방부에서 소련 핵공격 등으로 통신센터가 한번에 마비 될 수 있는 (유선통화망에 적용된 중앙집중식 방식의) 회선교환 통신방식 보다 안전한 분산형 네트워크 개발의 필요성으로 시작된 ARPANET※ 프로젝트를 통해서 정의된 패킷교환 방식의 네트워크 모델이

Naver Blog

실제 데이터 통신 과정 통해 OSI 7 계층 모델 (OSI 7 Layer Model) 쉽게 이해하기

네트워크 통신에 대해 처음 공부하기 시작할 때, 가장 먼저 기본적으로 배우는 것이 바로 OSI 7 계층 모델이다. 해당 모델에 대해 충분히 이해만 하고 있다면 어떤 유형의 네트워크 환경에서 데이터를 주고받더라도 해당 통신 방식에 대한 설명이 가능하다. 또한 데이터를 주고 받을 때 각 계층 별 역할이 서로 분리되어 있어, 네트워크 장애 발생시 구간 별 트러블 슈팅을 통한 문제 원인을 파악하는데도 유리할 수 있다. 이번 포스팅에서는 이런 OSI 7계층 모델에 대해 실제 통신과정과 비교하면서 보다 쉽게 이해 할 수 있도록 내용을 한번 정리해봤다. 그럼 포스팅 시작!! 1. 기본적으로 OSI 7계층 모델이란? 먼저 OSI 7계층 모델 개념부터 간단히 살펴보자! OSI 7계층(Open Systems Interconnection Model)은 아래 그림과 같이 국제표준화기구(ISO)에서 1984년 ISO/IEC 7498-1 라는 표준문서를 통해 발표된 컴퓨터 네트워크의 통신 프로토콜을 계층적으

Naver Blog

ES1-111M 노트북 디스플레이 액정을 기존 TN 패널에서 IPS패널로 교체하기

대학원 석사때부터 9년 넘게 내가 개발용으로 쓰고 있는 노트북은 대만 컴퓨터 회사인 ACER社에서 2015년에 출시한 'Aspire(아스파이어) ES1-111M' 모델이다. 당시 10만원 후반대 저가의 보급용 노트북이다 보니 디스플레이는 빠른 응답속도와 높은 주사율을 지원하지만 색상과 시야각이 현저히 떨어지는 TN패널이 탑재되었다. 이게 그래픽 작업이나 고사양 게임을 할게 아니면 크게 상관은 없었지만, 이제 나이가 드니 눈도 너무 침침해 색상도 너무 어둡고 시야각이 좁은 TN 패널이 너무 불편하여, 이참에 높은 시야각과 고화질을 지원하는 IPS 패널로 교체해보고자 한다. 그럼 해당 과정에 대해 포스팅 시작해보겠다!!! 1. 기존 TN 패널을 IPS로 교체하는 이유 기존 TN 패널을 사용하면서 겪은 가장 큰 문제점은 아무래도 시야각이 좁다는 것이다. 아래 그림처럼 TN패널의 약 시야각은 약 45˚도 좁기 때문에 사용자가 노트북을 열 때 마다 사용자 시야각 범위와 매번 각도를 맞춰줘야지

Naver Blog

도커(Docker) 컨테이너로 ONOS 2.7버전 배포/설치/실행하기

지난 포스팅에서는 Bazel이라는 빌드도구를 가지고 ONOS 소스파일을 직접 빌드하여 설치하는 방법을 포스팅했다. 해당 방식은 소스파일을 직접 수정하거나 자체 기능을 추가 개발하여 ONOS가 실행되는 호스트 PC에 가장 최적화된 형태로 실행 가능하다는 장점이 있지만 초기 빌드과정에서 시간이 많이 소요되고, 빌드환경 구축 또한 꽤 까다롭다는 단점이 있다. 또한 ONOS가 호스트 PC의 리소스를 그대로 사용하기 때문에 호스트 PC에 장애가 발생할 경우 실행중인 ONOS에도 영향을 준다는 문제점이 있다. 그래서 이번 포스팅에서는 컨테이너 실행환경을 제공하는 도커(Docker)를 가지고 호스트 PC와 리소스를 공유하지 않고 격리된 리소스 환경에서 ONOS 최신 배포판을 설치 실행하는 방법을 포스팅 정리해보겠다.! 그럼 포스팅 시작!! 1. ONOS 설치 요구사양 ONOS 컨테이너가 실행되는 PC의 요구사양의 경우, ONOS 공식 Wiki에서는 ONOS가 설치되는 PC의 최소 요구사양을 아래

Naver Blog

Ubuntu22.04 LTS에 ONOS 2.7.0 최신 배포판 Bazel로 빌드하여 설치하기

블로그 이용자들의 문의로 확인해본 결과, '23년 12월 기준, 현재 Ubuntu 20.04 LTS 버전 이상 OS 환경에서 ONOS 빌드 배포버전이 제대로 실행되지 않는 문제가 확인되었다. 빌드 배포판은 이미 빌드가 완료된 버전이기 때문에 ONOS 실행중 발생에러에 대한 직접적인 수정이 어렵다. 그래서 이번 포스팅에서는 번거롭지만 안정적으로 호스트에서 ONOS를 동작시키기 위해 직접 Bazel이라는 빌드도구를 활용하여 ONOS 최신버전인 2.7.0 소스파일을 빌드해 설치하고 CUI/GUI 환경으로 접속하는 포스팅을 진행해보겠다. 그럼 포스팅 시작!! 1.ONOS 빌드 환경 소개 ONOS 빌드 환경을 소개하겠다. ONOS 공식 Wiki에서는 ONOS가 설치되는 PC의 최소 요구사양을 아래 표와 같이 CPU 2 Core 이상, RAM 2GB이상, HDD 10GB 이상을 요구한다. 하지만 운영체제로 Ubuntu 22.04 LTS 환경에서 좀 더 쾌적하게 ONOS를 빌드 및 설치하기 위해

Naver Blog

Ubuntu 버전 별 Ifupdown, Netplan을 활요한 유/무선 네트워크 연결방법 한번에 정리하기

Ubuntu는 세계에서 가장 큰 범용성을 가지는 데비안 계열의 리눅스 운영체제이다. 이런 Ubuntu의 네트워크 설정방식은 각 버전 별로 조금씩 다른데, 17.10 버전 이전까지는 Ifupdown 네트워크 설정 도구를 지원했고, 17.10 버전 이상부터 현재 ('23년 11월 기준)22.04 LTS 버전까지는 Netplan 도구를 지원하고 있다. 이렇다 보니 가끔씩 구버전 Ubuntu 배포판을 사용할 일이 있으면 도무지 예전 네트워크 설정방식이 기억나지 않아 그냥 이참에 포스팅으로 간단히 정리해보려고 한다. 그럼 간단히 포스팅ㄱㄱㄱ!! 1. Ifupdown으로 유선 연결 설정(17.10 버전 이전) 먼저 Ifupdown 도구를 활용하여, 아래 그림과 같이 Ubuntu 16.04 버전이 설치된 PC를 유선 인터페이스 'eth0'을 통해 유무선공유기와 연결하고, 해당 인터페이스에는 IP주소 '192.168.0.2/24', GW주소는 공유기 주소 '192.168.0.1'로 설정하여 PC가

Naver Blog

InfluxDB + Grafana + JMeter를 활용한 실시간 API 웹서버 부하테스트 모니터링 시스템 구축하기

JMeter는 GUI 그리고 None-GUI(=CLI) 이렇게 2가지 실행 모드를 지원하는데, 이중 GUI 실행모드는 웹서버의 부하테스트 결과를 다양한 시각화 도구를 통해 다양한 그래프 방식으로 제공해준다. 다만 GUI 실행모드는 리소스 소모량이 크기 때문에 장시간 부하테스트를 진행한다면 공식적으로 Non-GUI모드를 권장하고 있다. 그래서 이번 포스팅에서는 효율적인 JMeter 부하테스트를 위해 None-GUI모드로 JMeter를 실행하더라도 오픈소스 시계열 데이터베이스인 InfluxDB와 오픈소스 데이터 시각화 도구인 Grafana를 활용하여 실시간 그래프 형식으로 부하테스트 결과를 확인할 수 있는 JMeter 모니터링 시스템을 구축해보고자 한다. 그럼 포스팅 시작! 1. 실습 구조 및 내용 소개 이번 실습에 활용되는 오픈소스 소프트웨어들은 아래 표와 같이 크게 Apache Http 서버, JMeter, InfluxDB 그리고 Grafana 이렇게 4가지이다. 오픈소스 SW 활용

Naver Blog

JMeter를 Non-GUI 모드로 실행하여, REST API 서버 부하 테스트 및 결과 분석하기

JMeter는 기본적으로 GUI 모드를 지원하며 이를 통한 직관적인 사용자 인터페이스 및 그래픽과 같은 가독성 높은 테스트 결과를 제공하지만, 해당 모드는 리소스 소모율이 높다는 단점이 있다. 대용량의 부하테스트를 한다면 오히려 Non-GUI 모드로 실행해 리소스 소모율을 최소한으로 줄이는 것이 낫다. 그래서 이번에는 테스트용 REST API 서버를 Apache 웹서버로 구축하고, 해당 서버를 대상으로 JMeter를 Non-GUI 모드(CLI 환경)로 실행해 API 요청에 대한 부하 테스트를 한번 진행해보겠다. 그럼 포스팅 시작! 1. 실습 구조 소개 이번 실습 구조는 아래 그림과 같이 사설 IP주소 '192.168.0.2'가 할당된 PC에 JMeter를 설치하고, 공인 IP주소 '221.130.20.221'이 할당된 PC에는 Apache와 PHP로 REST API 서버를 구축한다. 그리고 두 PC 모두 외부 인터넷망을 통해 서로 통신이 가능한 상태이다. 그리고 아래 그림과 같이 J

Naver Blog

Ubuntu 22.04에 Apache JMeter 최신버전 설치 및 원격으로 GUI 실행하기

Apache JMteter(이하 JMeter)는 API 서버를 대상으로 부하 및 성능 테스트를 지원하는 순수 JAVA 기반의 오픈소스 SW이다. 이름 그대로 Apache 오픈소스 라이선스를 따르며 누구나 자유롭게 수정 및 배포가 가능하다. 최근 해당 JMeter를 통해 특정 서비스 Server의 부하 및 성능 테스트를 하게되었다. 그래서 그냥 이참에 JMeter를 설치하고 터미널 환경에서 직접 부하테스트까지 하는 걸 한번 포스팅으로 정리해보고자 한다. 먼저 이번 포스팅에서는 Ubuntu 22.04 환경에 JMeter 5.6.2버전을 설치 하고 원격 터미널 접속상태에서 GUI 모드로 실행하는 방법까지 소개해보겠다. 포스팅 시작! 0. 패키지관리도구로 JMeter 한번에 설치하기 기본적으로 최신 Ubuntu 환경에서는 자체 패키지 관리도구인 apt-get을 가지고 아래와 같이 한줄의 명령어로 JAVA, JMeter 설치가 가능하다. $ sudo apt-get -y update && su

Naver Blog

iPerf3로 시나리오 별 다양한 네트워크 성능(송수신 트래픽처리량, 지터, 데이터 손실율 등) 측정 가이드

iPerf3는 L3 프로토콜인 TCP, UDP 뿐만아니라 PSTN 전송신호를 IP망에 전송할 때 사용하는 L4 프로토콜인 SCTP 환경에서도 대역폭(=데이터 처리량, Throughput), 지터(=네트워크 지연 시간의 변화) 등 다양한 네트워크 성능 측정을 지원한다. 그래서 이번 포스팅에서는 iPerf3를 활용한 다양한 네트워크 성능 측정 방법을 간단히 정리해 보겠다. 그럼 포스팅 시작!! 1. iPerf3 실습 구조 및 시나리오 이번 실습 구조는 아래 그림과 같이 내부 사설망(192.168.0.0/24)에 연결되어 IP주소 '192.168.0.3'이 할당된 iPerf 클라이언트에서, 외부 인터넷 망에 연결되어 공인 IP주소 '221.130.20.221'이 할당된 iPerf 서버를 대상으로 다양한 테스트 케이스 별 송/수신 트래픽처리량을 측정해보는 테스트를 진행한다. 테스트 시나리오는 아래와 같이 크게 6가지로 준비했으며 되도록이면 iPerf3에서 제공하는 옵션들을 다양하게 활용할

Naver Blog

운영체제(Windows, Ubuntu) 별 iPerf3 설치 가이드

iPerf는 'Internet Performance Working Group'이란 약어 이름 그대로 네트워크에 연결된 서버와 클라이언트 사이의 네트워크 성능을 측정하는 도구로써, 2015년 이후 3.X.X 대 버전이 배포되며 iPerf3라고 부른다. Windows, Linux, MacOS, 안드로이드, OpenBSD 등 다양한 운영체제에서 설치·운용이 가능한데 이번 포스팅에서는 Windows와 대표 Linux OS인 Ubuntu를 대상으로 다양한 iPerf3 설치방법을 한번 정리해보겠다. 그럼 포스팅 시작!! 1. iPerf3 설치 시스템 요구사항 iPerf3라는 프로그램 자체가 용량이 크거나 동작과정에서 많은 메모리를 소모하지는 않기 때문에, 크게 고사양을 요구하지는 않는다. 되도록이면 최소 아래 표에 나온 최소 스펙 이상을 만족하는 PC를 준비하자. iPerf 설치 PC사양 구분 본 포스팅 PC 사양 OS Windows, Linux 등 CPU Single Core Intel 혹은

Naver Blog

dnsperf를 이용하여 bind9으로 구축한 DNS 서버 성능 측정하기

'dnsperf'는 가장 기본적인 DNS 서버의 성능측정 시뮬레이션 도구로써, DNS 서버에 보내는...

Naver Blog

GNS3 설치 및 Virtual Box 기반 GNS3 VM과 연동하여 실행하기

우선 GNS3(Graphical Network Simulator 3)는 GUI를 지원하는 Python 기반 오픈소스 네트워크 시뮬레이터이다. CISCO의 IOS, ARISTA의 vEOS등 다양한 상용 네트워크 장비들의 네트워크 운영체제 환경을 지원하며 실제 장비들을 사용하지 않고도 매우 복잡한 네트워크 시뮬레이션이 가능하다. 윈도우/맥/리눅스를 모두 지원하며 2008년 최초 공개되 현재('23.08기준)는 2.2.42 버전이 배포중이다. 이번 포스팅에서는 GNS3 설치부터 환경구성까지만 간단히 정리해보며 이 포스팅부터 실제 시뮬레이션 테스트까지 진행해볼 계획이다. 그럼 포스팅 시작! 1. GNS3 설치 PC 준비하기 아래 표와 같이GNS3는 공식 배포사이트에 따르면 기본적으로 Windows, MAC, Linux 운영체제 환경에서 설치가 가능하며, CPU의 경우 2 Core이상에 가상화 기능을 지원해야 되고, RAM의 경우 최소 4GB 이상, HDD는 최소 80GB 이상 사양을 권장하

Naver Blog

Native VLAN의 필요성/Native VLAN 설정 및 통신과정 분석/Native VLAN과 Default VLAN 관계 정리

자! VLAN 관련 가장 마지막 포스팅이다. 지난 포스팅까지는 서로 다른 VLAN 간 통신을 지원하는 기술인 Inter-VLAN에 대한 구성방식 그리고 각 구성방식 별 통신과정까지 세부적으로 알아봤다면, 이번에는 Trunk Link를 통해 VLAN TAG없이 프레임을 전달할 수 있는 방식인 Native VLAN에 대해 왜 필요한지 그리고 그 통신과정까지 한번 살펴보겠다. 그럼 포스팅 시작!! 1. Native VLAN의 필요성 Native VLAN이 왜 필요한지에 대해 알아보려면 먼저 앞서 다뤘던 Trunk Link를 통한 통신과정에 대해 다시 한번 정리할 필요가 있다. 쉬운 설명을 위해 예를 들어 아래 그림과 같이 스위치A, B의 각 1번 포트는 VID값이 10인 Untagged Port로, 3번 포트는 VID값이 20인 Untagged Port로 지정되어 단말장치A/B/C/D가 연결되어 있고, 2번 포트는 VID값이 10과 20인 Tagged Port로 지정되어 두 스위치를 서로

Naver Blog

Inter VLAN의 필요성/Inter VLAN 구성방식 3가지/Inter VLAN 구성방식 별 동작과정 분석하기

지난 포스팅에서는 Tagged VLAN(=Trunk)과 Untagged VLAN(=Access)을 통해 어떻게 VLAN을 설정하고 네트워크 장비를 통해 VLAN 통신이 이루어지는지 살펴봤다면, 이번에는 서로 다른 VLAN간 통신을 지원하는 기술인 Inter-VLAN에 대한 필요성과 해당 구성방식 그리고 각 구성 방식에 따른 세부적인 동작 과정에 대해 알아 보겠다. 그럼 포스팅 시작!! 1. Inter VLAN의 필요성 아래 그림과 같이 스위치A 1번과 2번포트가 VID값이 10인 Untagged Port로 설정되었고 1번 포트에는 IP주소가 '10.0.0.2/24'인 단말A가 연결되어 있다, 스위치 B에는 1번과 2번포트가 VID값이 20인 Untagged Port로 설정되어 1번 포트에 IP주소가 '10.0.0.3/24'인 단말B가 연결되어 있다. 여기서 스위치A,B는 서로 2번포트를 통해 연결되었다고 가정했을 때, 10.0.0.0/24 대역의 동일한 도메인 네트워크에 속하는 단말

Naver Blog

VLAN의 등장배경/VLAN 역할/VLAN 규격/VLAN 구조/VLAN 설정방식/VLAN 동작과정 분석하기

오랫만에 포스팅이다. 이번에는 최근 테스트 목적으로 스위치 장비 1대로 VLAN을 통해 여러개의 서로 다른 도메인 네트워크 구성을 해줄 일이 있었는데 VLAN의 Untag/Tag 대한 개념이 약간 헷갈리기도 했고 스위치 장비를 다루는 운용자들이 Cisco 어느 제조사의 스위치 장비를 사용하느냐에 따라 서로 사용하는 기술 용어가 조금씩 차이가 나기도 해서 이를 한번에 정리해보고자 한다. 그럼 포스팅 시작 1. VLAN의 등장배경 아래 [그림 1]과 같이 기업 내부에 인사/영업 2개의 팀이 있고 각팀에는 업무수행을 위한 2개의 PC가 있다고 가정하자. 각 PC는 각 팀 업무 수행을 위해 인사/영업 DB로 접속할 수있어야 하지만 서로 팀간에는 보안을 위해 개별적인 네트워크 구성이 되어야 하므로 [그림 1]과 같이 2개의 스위치를 각 팁별로 두고 네트워크를 구성하게 된다. 하지만 이렇게 네트워크를 구성할 경우 8 포트짜리 스위치 2대 전체 16 포트에서 고작 6개 포트만 사용하고 10개 포

Naver Blog

Untagged VLAN(=Access)/Tagged VLAN(=Trunk) 상세 통신과정 분석하기

지난 포스팅에서는 VLAN에 대한 아주 기본적인 소개와 설정 및 동작 과정에 대해 간략히 소개했다면, 이번에는Untagged와 Tagged VLAN 설정방식이 실제 스위치 장비를 거치면서 어떻게 통신을 하는지 상세과정에 대해 알아보겠다. VLAN 기술에 대한 개념적인 내용은 아래 내용을 참조하도록 하자. VLAN의 등장배경/VLAN 역할/VLAN 규격/VLAN 구조/VLAN 설정방식/VLAN 동작과정 분석하기 오랫만에 포스팅이다. 이번에는 최근 테스트 목적으로 스위치 장비 1대로 VLAN을 통해 여러개의 서로 ... blog.naver.com 1. Untagged VLAN 통신과정 먼저 [그림 1]과 같이 스위치A의 1번 포트에는 MAC주소가 'a', IP주소가 '10.0.0.2'인 단말A가 연결되었고. 2번 포트에는 MAC주소가 'b', IP주소가 '10.0.0.2'인 단말B가 연결되었을 때, 단말A와 단말B가 서로 동일한 VLAN 10인 네트워크로 묶여 통신할 수 있도록 Unta

Naver Blog

WSL과 VM 비교/WSL 구조분석/WSL2로 Windows 10·11에 리눅스 배포판 설치/터미널 접속 설정/WSL2 완전 삭제하기

WSL(Windows Subsystem for Linux)은 윈도우에서 리눅스 환경 제공을 위해 Microsoft에서 배포한 윈도우 서브 시스템이다. 초기에는 지원하는 리눅스 명령어가 제한적이기도 했고, 그냥 윈도우에서 리눅스가 돌아간다는 정도였지만, 다음 버전인 WSL2부터는 리눅스커널 자체를 가상화로 올려서 실제 서버에 리눅스를 설치한 것과 유사한 환경을 지원해 이제는 '쓸만해졌다'라고 부를정도까지 되었다. 이번 포스팅에서는 이런 WSL 기능과 구조에 대해 분석하고 실제 WSL2로 리눅스 배포판을 설치 관리해보는 것까지 진행해보겠다. 그럼 포스팅 시작!! 1. WSL과 VM 비교 WSL 등장이전 일반적으로 리눅스 개발자가 윈도우 OS 환경에서 개발을 한다고 하면, 간단하게는 아래 [그림 1]과 같이 개발PC에 Host OS로써 설치된 윈도우 OS 위에 Virtual Box나 VMware와 같은 Hypervisor(이하 하이퍼바이저)를 설치하고 리눅스 OS 환경을 가상머신(이하 V

Naver Blog

Windows 10 (22H2) 최신 이미지 파일(ISO)로 USB 부팅디스크 만들어서 PC에 설치하기

매번 노트북에 미리 설치된 상태의 Windows 10(이하 윈도우 10)만 사용하다가 최근 오랜만에 직접 USB 부팅디스크를 만들어서 설치해야하는 일이 생겼다. 그러다가 이래저래 찾아보니 정품인증 코드는 따로 구매해야되지만 최신 설치 이미지 파일(*.ISO)의 경우 Microsoft 공식사이트를 통해서 다운로드 가능함을 알고 직접 윈도우10 최신 이미지 파일을 다운로드하여 이를 가지고 USB 부팅 디스크를 만들어 실제 PC에 설치해보는 것까지 이번 포스팅으로 한번 정리해봤다. 그럼 포스팅 시작!! 1. Windows 10 최신 이미지 파일(ISO) 다운로드 우선 웹브라우저 크롬을 실행하여 Microsoft의 윈도우10 공식 다운로드 페이지(www.microsoft.com/ko-kr/software-download/windows10)로 이동하자. 반드시 크롬(Chrome) 웹브라우저여야 한다.!! 특이하게도 해당 공식 페이지에서 윈도우 10을 바로 다운로드 하는 것은 불가능하지만, i

Naver Blog

Windows 11(22H2) 설치 미디어 도구로 USB/DVD 부팅디스크 만들어 PC에 설치하기

최근 CPU는 AMD Ryzen 5625U가 탑재된 나름 고사양 개발용 PC를 한대 받게 되었는데. 문제는 운영체제가 설치되지 않은 깡통 PC였다. 원래 사용하던 Windows 10(이하 윈도우10)을 설치해 활용하고자 했으나, 해당 CPU가 Windows 11(이하 윈도우 11)을 최적으로 지원하기도 하고, 윈도우11부터 좀 더 안정적인 자체 리눅스 시스템(WSL, Windows Subsystem for Linux)을 또 지원도 하기에 이번 기회에 윈도우 11을 USB 혹은 DVD 부팅디스크로 직접 만들어서 PC에 한번 설치해보고 이를 포스팅으로 정리해본다. 그럼 포스팅 시작!! 1. Windows 11 공식 설치 방법 3가지! Microsoft에서는 윈도우 11 공식사이트(https://www.microsoft.com/ko-kr/software-download/windows11)를 통해 윈도우 11 설치방식을 3가지 안내하고 있다. 첫번째 방법은 아래와 같이 'Windows 11

Naver Blog

Windows 11 원드라이브(OneDrive) 제거/위젯 제거/검색 메뉴 뉴스(콘텐츠 추천) 제거/부팅시 스티커메모(Sticky Note) 자동실행 설정

윈도우 11을 설치 후 며칠 사용해보니, OneDrive가 기본 설치되 특정 디렉토리와 자동 동기화 설정이 되어 있고, 위젯과 검색 메뉴에는 쓸데없는 인터넷뉴스, 콘텐츠 제안 등이 나오고, 윈도우10에서는 잘 사용했던 '스티커 메모(Sticky Note)' 앱은 윈도우 11에서 부팅 후에도 자동실행되지 않아 사용자가 매번 수동으로 재실행해주어야 하는 번거러움이 있었다. 그래서 이번 포스팅에서는 윈도우11 설치 초기에 보이는 이런 부분을 해결하기 위한 방법들에 대해 한번 정리해 봤다. 그럼 포스팅 시작ㄱㄱ! 1. 포스팅 내용 소개 이번 포스팅에서 윈도우 11 설치 후 효율적으로 사용하기 위한 초기 설정 부분은 아래 그림과 같이 크게 4가지이다. 먼저 사용자 동의 없이 설치된 OneDriver를 제거(①), 작업표시줄만 차지하는 윈도우 위젯 제거(②), 검색 메뉴 실행시 인터넷 뉴스 등 콘텐츠가 포함되지 않도록 제거(③)를 할 생각이다. 그리고 마지막으로 사용자 편의를 위해 스터커 메모

Naver Blog

'5G전국망/농어촌 5G 공동망/5G특화망/이음(e-UM)5G/5G정부망/5G국가망' 이란 무엇인가?

2019년 4월 3일, 한국은 세계 최초(?) 5G 상용화 서비스를 시작하였다. 그리고 2022년 오늘날에는 5G망을 적용하는 구축 사업에 따라 해당 5G망을 가르키는 용어가 '5G전국망/농어촌 5G 공동망/ 5G특화망/이음5G/5G정부망' 등 굉장히 다양한 것을 알 수 있다. 5G면 5G이지 망을 지칭하는 용어가 왜 이렇게 다양한지... 그래서 이를 좀 더 정리할 필요가 있겠다 싶어 이번 포스팅을 통해 국내에서 말하는 해당 5G망 종류와 각 차이점에 대해 한번 알아보겠다. 그럼 포스팅 시작! 1. 5G 전국망 '5G 전국망'은 이동통신사들이 주로 5G 모바일 가입자들에게 스마트폰 중심 소비자(B2C) 서비스 제공을 목적으로 과기부로부터 3.5GHz 주파수 대역의 100MHz 씩 각 할당받아 구축된 5G망이다. 현재('22년 11월 기준) 각 통신사 별 할당받은 100MHz 대역을 살펴보면, 아래 [그림 1]과 같이 LGU+가 3.40 ~ 3.50 GHz, SKT가 3.50 ~ 3.

Naver Blog

[5G 완전정복] 5G 표준안/5G Use Case(적용 시나리오 및 특징)/3GPP 5G 아키텍처/국내 5G망 현황 분석하기

2019년 4월, 국내에서 세계 최초 5G 상용화를 시작한다. (물론 세계 최초라는 것에는 많은 이견들이 있지만 일단 먼저 개통하긴 했으니까...) 2022년 기준 현재 국내는 5G와 4G 'LTE'가 상용망으로 병행 운용중에 있이며, 그중에서 5G는 가입자 수를 꾸준히 늘려 나가고 있다. 그럼 5G는 기존 LTE보다 어떤 점에서 강점을 가지기에 꾸준히 사용자수가 늘고 있을까? 그래서 이번 기회에 5G의 기본 개념부터 공식 표준안/5G 적용 시나리오(Use Case) 및 특징/5G 표준 아키텍처 분석 및 국내 5G 현황까지 한번 알짜베기로 정리해보고자 한다. 그럼 포스팅 시작!! 1. 5G 란? '5G'는 5 Generation의 약자로 4세대 이동통신 방식인 LTE 다음에 등장한 5세대 이동통신시스템(혹은 통신방식)을 말하며, 국내에서는 2019년 4월 3일 아래 [그림 1]과 같이 세계 최초(?)로 국내 이동통신 3사(KT, LGU+, SKT)를 통해 동시 상용화 서비스를 개시하

Naver Blog

리셋(reset)과 리버트(Revert)로 과거 특정 커밋(Commit) 상태로 되돌아가기

우리는 git을 통해 소스코드의 가장 안정적인 현재 상태를 '커밋(Commit)' 상태로 순차적으로 저장하여 관리 및 유지한다. 하지만 예상과는 다르게 작업의 결과물에 오류가 발생하는 경우가 생길 수 있는데 이 경우 오류 발생 이전의 커밋 상태로 되돌려서 다시 코드를 작성할 수 있다. 이때 이전 커밋 상태로 되돌아가는 방식에는'리셋(Reset)'과 '리버트(Revert)', 이렇게 2가지가 있으며, 이번 포스팅에서는 직접 실습을 통해 2가지 방식의 사용방법과 각 차이점에 대해서도 한번 알아보겠다. 1. 리셋(reset)과 리버트(revert)의 차이점! 우선 리셋과 리버트의 큰 차이점은 이력을 남기느냐 유무이다. 예를 들어 아래 그림과 같이 C4에서 C2로 커밋 상태를 되돌리고자 할때 리셋은 C2로 돌아간 시점에서 이후의 커밋은 깔끔하게 삭제된다. 반대로 리버트는 C2 커밋상태로 돌아간다기 보단 이전 C2 상태 커밋을 가져와 새로운 커밋 C2'를 생성한다. 즉, 리셋과 리버트 모두

Naver Blog

Q-VPN(Quantum-VPN, 양자 VPN) 세션수립/양자난수 발급 및 배포/암·복호화 기능 검증하기

지난 포스팅에서는 개발된 양자 VPN(이하 Q-VPN)을 가지고 실제 Server와 Client에 구축해 통신 테스트까지 진행해보았다. 이번에는 이렇게 구축된 Q-VPN을 가지고 양자난수는 제대로 발급하는지... 그리고 이를 기반으로 암·복호화 통신과정은 제대로 이루어지는지 ... 실제 Q-VPN 동작 과정을 한번 검증해보고자 한다. 검증 방식은 Q-VPN이 동작하면서 Server와 Client에 기록되는 로그 기록을 기반으로 진행하며, 세부 검증 항목은 아래 표와 같다. 그럼 검증 준비과정과 실제 아래 실제 검증까지 한번에 진행해보자~! 포스팅 시작!! No. 검증항목 검증방법 1 Q-VPN 세션 수립과정 검증 SSL Handshake 수립과정에서 Q-VPN Server와 Client가 주고받는 메시지를 확인하고 최종적으로 VPN 사설 IP주소가 할당된 가상 인터페이스 생성여부 확인 2 양자난수 발급 및 배포 검증 Q-VPN Server와 Client에서 직접 발급한 양자난수 값과

Naver Blog

dnsperf를 이용하여 bind9으로 구축한 DNS 서버 성능 측정하기

'dnsperf'는 가장 기본적인 DNS 서버의 성능측정 시뮬레이션 도구로써, DNS 서버에 보내는 DNS 질의(Query) 종류 및 이를 요청하는 가상 Client의 수 그리고 초당 보낼 수 있는 질의 갯수(Query per Sec) 제한 등 다양한 옵션을 적용해 간단히 DNS 서버의 지연, 속도 등을 측정하여 그 결과를 화면으로 확인 할 수 있다. 그래서 이번 포스팅에서는 해당 'dnsperf'를 활용해 지난 포스팅에서 구축한 bind9 기반의 DNS 서버에 대한 성능을 측정해겠다. 그럼 포스팅 시작!! 1.실습구조 소개 실습방법은 간단하다. 아래 [그림 1]과 같이 Ubuntu 20.04가 설치된 '성능시험용 PC'를 한대 준비하고 여기에 'dnsperf'를 설치한 뒤, 해당 PC에서 외부 공인 IP주소가 '14.53.80.71'로 할당된 bind9기반 DNS 서버를 대상으로 'dnsperf'를 통한 성능측정을 진행해보겠다. [그림 1] dnsperf를 이용한 DNS Serve

Naver Blog

Windows 10에 Git 설치/로컬 저장소 생성 및 Git Hub 연동/로컬저장소에 저장(Commit)/Git Hub 전송(Push)하기

Git 은 소스코드, 문서 등 각종 소프트웨어 형상관리(SCM, Software Configuration Management)와 버전관리 (VCM, Version Control System)를 지원하는 일종의 소프트웨어 도구이다. 그리고 이때의 소프트웨어 형상들은 Git Hub라는 별도 원격 웹 스토리지 서비스를 통해 저장/배포/관리 된다. 이번 포스팅에서는 Windows PC에 Git을 설치하고 로컬 저장소와 Git Hub 원격 저장소를 생성하여 서로 연동 한 뒤, 소스코드 이력을 로컬 저장소에 기록(=Commit), 다시 원격저장소에 기록(=Push)하는 것까지 간단히 정리해보겠다. 그럼 포스팅 시작! 1.Windwos에 Git 설치하기 SW형상관리도구인 Git은 리눅스 환경 뿐만 아니라 MacOS, Windows 환경도 지원하고 있다. 이번 포스팅에서는 먼저 Windows 10이 설치된 PC에 Git 설치부터 진행해보겠다. 이를 위해 아래와 같이 git 공식사이트(https:/

Naver Blog

Ubuntu 20.04 Server 환경에서 Renderer(Networkd/NetworkManager)별 무선 WiFi 연결하기

'Render'의 기본 의미는 무엇인가를 지금과는 다른 어떤 상태로 만든다는 의미이다. 그리고 'Renderer'는 이런 Render 과정을 수행하는 수단 혹은 도구를 의미하는데, Ubuntu 17.10버전 부터 등장했던 네트워크 설정도구인 Netplan에서도 YAML 파일로 정의된 네트워크 설정 정보를 실제 네트워크 인터페이스에 적용하여 통신이 가능하도록 수행하는 도구인 Renderer가 크게 Network-Manager, networkd 이렇게 2가지 존재한다. 두가지 차이점을 비교하자면 아래 표와 같다. 그래서 이번 포스팅에서는 Ubuntu 20.04 LTS Server 환경에서 해당 Renderer 별로 어떻게 WiFi 설정 할수 있는지 그 방법에 대해 간단히 소개해 보겠다. 그럼 포스팅 시작!! Renderer 역할 Networkd Ubuntu Server 환경에서 CLI 인터페이스를 통해 *.yaml 파일로 정의된 네트워크 설정 정보를 시스템에 적용하는 Renderer N

Naver Blog

5G 라우터 『Galaxy 5G Mobile(모델명 : SCR01)』 국내 통신사 KT로 5G 개통하기

현재 살고 있는 집이 오래된 아파트이다 보니 GiGA 인터넷은 커녕 최대 500Mbps 속도를 보장하는 인터넷 회선도 겨우 간당간당한 속도로 현재 이용하고 있다. 그래서 이를 개선하기 위해 찾은 제품이 5G 라우터인 'Galaxy 5G Mobile(이하 모델명 'SCR01'로 지칭)'이다. 단순하게 5G 기반 WiFi를 만들어주는 5G Egg라고 생각하면 되는데, 이게 제조사는 삼성이지만 국내에선 정식 출시되지 않은 해외 단말이다보니 이를 국내 통신사인 KT를 통해 개통하려다가 꽤 삽질을 많이하여 이를 블로그 포스팅으로 정리해 보고자 한다. 그럼 포스팅 시작~!! 1. SCR01 제품 구매하기 우선 국내에서 'SCR01' 제품을 구매할 수 있는 방법은 국내 중고거래 사이트를 이용하는 방법과 해외 직구를 중계해주는 사이트를 통해 가능하다. 대표적인 중고 거래사이트인 중고나라를 보면 매물이 많지는 않지만 아래와 같이 최근 6월3일도 간간히 제품이 올라오고 있으며 대략 15만~18만원 사

Naver Blog

5G 라우터 『Galaxy 5G Mobile(모델명 : SCR01)』 국내 통신사 LG U+(유플러스)로 5G 개통하기

최근 이동통신사를 KT에서 LG 유플러스(이하 LG U+)로 이동하면서, 기존 KT 5G 데이터 쉐어링으로 사용중이던 5G 라우터 'SCR01'의 통신사도 변경해주어야 하는 상황이 생겼다. 그런데 이과정에서 KT와는 다르게 U+ 개통과정에서는 여러가지 시행착오가 있었고, 해당 과정을 이렇게 포스팅으로 정리했다. 참고로 이번 포스팅은 LG U+에서 SCR01 단말의 5G 개통을 위한 5G USIM 발급과정에 대해서 중점적으로 정리했으며, SCR01 단말의 구매 및 초기 설정방법은 아래 포스팅을 참조하도록 하자. 그럼 포스팅 시작! 5G 라우터 『Galaxy 5G Mobile(모델명 : SCR01)』 국내 통신사 KT로 5G 개통하기 현재 살고 있는 집이 오래된 아파트이다 보니 GiGA 인터넷은 커녕 최대 500Mbps 속도를 보장하는 인터... blog.naver.com 1. LG U+에서 'SCR01' 5G 개통방법 2가지! 5G 라우터인 'SCR01'을 국내 통신사인 LG U+에서

Naver Blog

Ubuntu 20.04 LTS 환경에서 QDK, Q#기반 양자난수생성기를 OpenVPN에 적용한 양자 VPN(Q-VPN) 개발하기

OpenVPN에서는 SSL 라이브러리를 통해 생성한 유사난수 값을 가지고 VPN단말 간 세션키 생성과 해당 세션키 통한 암호화된 통신을 지원한다. 문제는 이때 활용되는 유사난수값이 완전한 난수가 아닌 컴퓨터가 난수를 흉내낸 예측 가능한 값이기 때문에 보안상 외부로 노출될 확률이 높다는 점이다. 그래서 이번 포스팅에서는 Ubuntu 20.04 64bit가 설치된 PC에 우리가 앞서 Micosoft社의 오픈소스 양자기술 개발도구인 QDK와 해당 개발언어인 Q#을 가지고 만들어본 양자난수생성기를 가지고 OpenVPN의 유사난수를 생성하는 부분을 대체하여 양자난수 기반의 VPN 인증과 세션키 생성을 통한 암호화된 통신을 지원하는 Quantum VPN(일명 Q-VPN)을 한번 개발해보겠다. ※원래 Q-VPN은 양자난수가 아니라 양자키를 적용한 VPN을 지칭하는데.. 양자키 관련 오픈소스는 찾지를 못하여 여기서는 양자난수생성기를 활용한 VPN을 Q-VPN으로 지칭해 포스팅 진행하였습니다. 1.

Naver Blog

Ubuntu 20.04 LTS에 Q-VPN(Quantum VPN, 양자 VPN)을 활용한 VPN 서버, 클라이언트 구축 및 동작 테스트

이번 포스팅에서는 지난 포스팅에서 개발한 Q-VPN(양자VPN)을 가지고 직접 물리 Q-VPN Server와 Client를 구축하여 실제로 양자난수를 통한 VPN 통신이 가능한지 테스트해보고자 한다. 이번 포스팅의 세부 구조는 아래 [그림 1]과 같다. 먼저 Ubuntu 20.04 64bit가 설치된 PC 2대를 준비하고 한대는 유무선 공유기에 연결하여 내부망 IP주소 '192.168.1.3'을 할당해 Q-VPN Client로 활용한다. 다른 한대는 외부망 인터넷에 연결하여 공인 IP주소 '121.135.228.231'을 할당해 Q-VPN Server로 활용한다. 그리고 Q-VPN 개통 후에는 Server와 Client 모두 가상 터널링 인터페이스를 통해 동일한 VPN으로 묶어 구성해줄 계획이다. 그럼 포스팅 시작하겠다.!! [그림 1] 본 포스팅 실습을 위한 Q-VPN 물리 네트워크 구조 및 Q-VPN 개통 후 터널링 구조 1. Q-VPN Server 구축하기 먼저 Q-VPN Se

Naver Blog

Microsoft社의 QDK와 Q#을 이용하여 Ubuntu 20.04 LTS에 Python기반의 양자난수발생기(QRNG) 만들기

Microsoft社에서는 'Microsoft Quantum'이라는 이름으로 양자기술을 오픈소스로 제공해주고 있는데, 해당 오픈소스에는 양자 프로그래밍 언어인 Q#과 이를 서포트 하기 위한 개발도구인 QDK(Quantum Development Kit)를 포함하고 있다. 이번 포스팅에서는 해당 Q#과 QDK를 이용해 Ubuntu 20.04 LTS 환경에서 양자난수 생성기를 만들어 보겠다. 그럼 포스팅 시작!! 1. 실습내용 소개 Microsift社에서는 공식 가이드 문서(https://docs.microsoft.com/ko-kr/quantum/)를 통해 QDK와 Q#을 이용한 여러가지 양자 어플리케이션 예제를 소개하고 있는데 그중에서 본 포스팅에서는 Q#과 QDK를 통해 Ubuntu 20.04 64bit OS환경에서 Python을 이용한 양자난수생성기(QRNG, Quantum Random Number Generator)를 만들어 보고자한다.(해당 오픈소스에 대한 공식 가이드 문서는 아래

Naver Blog

Git Hub 원격저장소 복제/브랜치(Branch) 생성 및 분석/Commit 병합하기

지난 포스팅에서는 Git을 가지고 로컬저장소와 원격저장소를 생성하고 이를 연결하여 소스파일을 Commit, Push 하는 과정을 간단히 진행해보았다. 이번 포스팅에서는 지난 포스팅에서 만든 Git Hub 원격저장소를 복제하여 로컬 저장소를 생성하고 master가 아닌 새로운 브랜치(Branch)를 생성하여 소스파일을 수정해 이를 병합해보는 것까지 진행하여 Git을 사용하는 목적에 대해 명확히 파악해보도록 하겠다. 그럼 포스팅 시작! 1. 원격저장소 복제하여 로컬저장소 생성하기 Git에서 로컬 저장소를 생성하는 방법은 아래와 같이 크게 2가지이다. 'git Init' 명령을 통해 로컬 저장소를 새로이 생성하거나, 'git clone' 명령으로 이미 생성한 원격 저장소를 복제하여 로컬 저장소로 생성하는 방식이다. 지난 포스팅에서는 'git init' 명령을 통해 로컬저장소를 아예 새로 만들어 보았으므로, 이번에는 'git clone' 명령을 통해 Git Hub 원걱저장소를 복제하여 로컬

Naver Blog

bind 10(v1.0)으로 Ubuntu 12.04 LTS에 DNS 서버 구축 및 동작 테스트하기

인터넷 인프라 관련 프로토콜 및 운영 개발을 지원하는 비영리기관인 ISC(Internet Systems Consortium)에서는 오픈소스 DNS 시스템으로 'bind 9'을 꾸준히 업데이트 배포하고 있다. 하지만 'bind 9' 다음 버전인 'bind10'도 존재하는데, 2014년 1.2버전(배포명 'bundy')을 끝으로 공식 배포를 중단하였다. 'bind 9'의 경우 텍스트 파일 형식으로 도메인주소를 관리했다면 'bind 10'은 DB를 통해 도메인을 관리할 수 있다는 것이 가장 큰 특징이다. 그럼 이번 포스팅에서는 이런 'bind10'을 직접 설치해보고 동작 테스트까지 간단하게 소개해보겠다. 1. bind 10 지원 중단 이유? 실습을 진행하기 전에 ISC에서 왜 bind10 지원을 중단했는지 간단히 알아보면, 일단 ISC의 엔지니어링 담당 부사장인 Scott Mann이 밝히길 현재 bind 9과 bind 10 이렇게 2개의 프로젝트 개발을 동시에 추진할 (인력이나 금전 등의

Naver Blog

bind9 최신 배포판(v9.18.4) 소스파일 직접 컴파일하여 설치하기

현재 ('22년 6월 기준) 최신 Ubuntu 20.04 LTS 버전에서 패키지 관리도구인 'apt-get'으로 간단히 설치가능한 bind9 설치버전은 v9.16.1 버전이다. 하지만 bind9 공식배포 기관인 ISC의 공식 사이트에서는 현재 안정화 버전(Stable Version)으로 v9.30.1 버전을 배포하고 있다. 그래서 이번 포스팅에서는 bind9의 최신 배포 소스파일을 직접 컴파일하여 설치하는 방법을 한번 소개해보겠다. 그럼 포스팅 시작! 1. bind9 설치 PC 준비하기 실습의 편의성을 위해 bind9의 소스파일을 직접 컴파일하여 설치하기 위한 PC를 한대 준비하자. 해당 PC는 아래 [그림 1]과 같이 기본적으로 운영체제는 Ubuntu 20.04 LTS 버전이 설치되며, CPU는 최소 2 Core 이상, 메모리(RAM) 사이즈는 4GB이상, 디스크 공간은 30GB 이상 그리고 이더넷 인터페이스는 속도 상관없이 필히 1개는 지원하는 것으로 준비하여 인터넷과 통신할 수

Naver Blog

EfficientWord-Net으로 라즈베리파이3B+에 호출어 음성인식(Hotword-Detection) 기능 설치하기

우리는 음성인식 기능을 사용하기 전에 '시리', '빅스비', '기가지니' 등 다양한 호출어(Hotword)를 통해서 음성인식 기능을 시작하게 된다. 이런 호출어 인식(Hotword-Detection) 기능들도 다양한 오픈소스가 존재하지만 대부분 기술지원을 중단하거나 더이상은 업데이트를 지원하지 않는 경우가 대다수다. 하지만 그중에서 최근까지도 꾸준히 업데이트가 진행중인 오픈소스가 'EfficientWord-Net'이다. 그래서 이번 포스팅에서는 해당 오픈소스를 활용하여 호출어 음성 인식 기능을 구현해보고 동작 테스트까지 진행해보겠다. 1. 실습구조 및 동작과정 소개 이번 포스팅의 실습구조는 아래 [그림 1]과 같이 우선 라즈베리파이3B+ 모델을 하나 준비해, 유선 LAN포트에는 유선 LAN 케이블을 통해 인터넷에 연결한다. 마이크 포트가 없기 때문에 USB포트에는 USB 사운드 카드를 꽂아 3.5mm 마이크 잭을 연결해주고, 3.5mm 오디오 잭에는 음성 출력을 위한 스피커를 연결해

Naver Blog

[하드웨어적으로 CPU 쿨러 소음문제 해결 및 속도 조절]

* 아래 4가지중에서 2가지 이상 해당 되는 경우에 많은 도움이 됩니다.^^ 냉각팬의 소음이 심하다. 컴퓨터 ...

Naver Blog

[오픈스택]"Unauthorized (HTTP 401)" Error Message가 출력되는 경우

"Unauthorized (HTTP 401)" Error Message가 출력 되는 경우 해당 에러메세지는 Nova, Glance, C...

Naver Blog

[오픈스택] Cinder Volume 생성시 Status 상태가 계속 creating 상태인 경우

Cinder Volume 생성시 Status 상태가 계속 creating 상태인 경우 아래와 같이 Cinder Volume 리스트를...

Naver Blog

[오픈스택]“HTTPConnectionPool(host="192.168.1.2", Port=8774) [Errono 111] connection refuse” 에러메시지 출력 되는 경우

"HTTPConnectionPool ...connection refuse” 메세지 출력 경우 해당 에러 메시지는 내가 Controlle...

Naver Blog

[오픈스택] 생성한 인스턴스가 외부망(인터넷)과는 연결이 않되는 문제

생성한 인스턴스가 외부망(인터넷)과는 연결이 않되는 문제 우선 dash board에 접속하여 ICMP 네트워크...

Naver Blog

Ubuntu Server에 USB 인식시키기

0. 들어가기 전에 ... | 간단한 포스팅 소개 이번 포스팅은 Command Line Interface(CLI) 환경의 U...

Naver Blog

[ONOS]ONOS와 OVS 연결 문제("is_connected:true"메세지가 확인되지 않는 경우)

0. 들어가기 전에... | 포스팅 간단한 소개 지난 ONOS와 OVS 연결 포스팅을 하였었고, 많은 분들이 ...

Naver Blog

[2021 마이 블로그 리포트] 블로그 빅데이터로 알아보는 '2021 내 블로그 스타일'

톨티의 공작소

Naver Blog

Ubuntu 20.04 LTS에 OpenVPN 패키지 배포판 설치 및 통신 테스트 하기 ('22년 실습 개정편)

Ubuntu LTS 버전이 20.04버전으로 바뀌면서 OpenVPN의 경우 easy-rsa 도구를 통한 인증키와 인증서...

Naver Blog

bind9으로 Ubuntu 20.04 LTS에 DNS 서버 구축 및 동작 테스트하기

'bind9'은 인터넷 인프라 관련 프로토콜 및 운영 개발을 지원하는 비영리기관인 ISC(Interne...

Naver Blog

Ubuntu 20.04 LTS에 기본 DNS 서버 설정/조회/동작 테스트하기

이번 포스팅에서는 아래 [그림 1]과 같이 내부 사설 IP주소 '11.0.0.1'이 할당된 유무선 공유...

Naver Blog

bind9으로 Ubuntu 20.04 LTS에 DDNS(Dynamic DNS) 구축 및 동작 테스트하기

지난 포스팅에서는 bind9으로 아주 기본적인 DNS서버를 구축했다. 이번 포스팅에서는 한발 더 나아가 bi...

Naver Blog

KVM+QEMU로, 공인 IP주소가 할당된 Ubuntu 12.04 LTS 가상머신 생성하기

최근에 이미 2017년 기술 지원이 만료된 EOL(End-Of-Life) 버전의 Ubuntu 12.04 LTS 버전 운영체...

Naver Blog

Ubuntu 20.04 리눅스 서버에 Timezone변경/NTP 시간동기화/수동으로 직접 시간 설정하기

리눅스 서버에 어떤 서비스를 동작시킬 경우 종종 정확한 시간 설정이 필요한 경우가 많다. 예를 들면, 데...

Naver Blog

KVM+QEMU로, 직접 구성한 NAT 네트워크에 연결된 Ubuntu 20.04 LTS 가상머신 생성하기

리눅스 가상화도구라고 하면 커널기반의 가상화 환경을 제공하는 Hypervisor인 KVM 그리고 리눅스 Use...

Naver Blog

Ubuntu 20.04 LTS 환경에서 hostapd로 무선AP(WiFi망)구축/WiFi 접속테스트/부팅시 자동실행 설정하기

hostapd는 Wifi AP 기능 지원 및 관련 인증 서비스를 제공하는 데몬으로써, 리눅스 OS환경의 백그라운...

Naver Blog

KVM+QEMU로 환경 구축하여, 가상머신사이 GRE 터널링 최대 세션 수 측정하기

이번 포스팅은 동일한 NAT 네트워크 브릿지에 연결되는 2개의 가상머신을 KVM+QEMU로 생성하고, ...

Naver Blog

KVM+QEMU로 서로 다른 도메인 네트워크 환경 구축하여 데이터 암호화 유/무에 따른 OpenVPN 속도 측정하기

지난 포스팅에서는 KVM+QEMU의 간단한 실습을 통해 리눅스 가상화 방법을 알아봤다면, 이번 포스팅...

Naver Blog

오픈소스 SW를 활용해 ONOS로 스위치 포트 별 송수신 트래픽처리량 정보 실시간 그래프로 출력하기

이번 포스팅은 SDN제어기인 ONOS의 REST API를 통해 연결된 OVS 스위치의 각 포트별 송수...

Naver Blog

Ubuntu 20.04에 ONOS 2.5.1 LTS 배포판 설치/Mininet 가상 네트워크 연결/Flow Rule설정 및 삭제/Host간 Ping 테스트 및통신과정 분석하기

ONOS 포스팅의 경우 4년전인 2017년 이후 업데이트가 전혀 되지 않았다. 그 사이 Ubuntu 16.04버전은 ...

Naver Blog

라즈베리파이3에 Open vSwitch(OVS) 설치/OVS 네트워크 구성/ONOS로 직접 Flow Rule 설정하여 VLAN 패킷 제어하기

자! 지난 포스팅에서는 Mininet기반 가상 네트워크 환경에서 ONOS로 간단히 Host간 통신이 되도록 F...

Naver Blog

쿠버네티스에서 Pod 배포 과정에 발생된 오류 별 해결방법 가이드

이번 포스팅은 가볍게 지금까지 쿠버네티스(이하 K8S) 실습을 진행하면서 Pod 배포시 발생되었었던 오류...

Naver Blog

레플리케이션 컨트롤러(Replication Controller)로 Pod 복제하여, MeltalLB를 통한 외부트래픽 로드밸런싱하기

이번 포스팅에서는 아래 [그림 1]과 같이 Kubernetes(이하 K8S)에서 특정개수 만큼의 Pod를 복제해 동...

Naver Blog

Kubespray로 Ubuntu 20.04 LTS서버에 쿠버네티스 v1.18 설치하기- Install Kubernetes on Ubuntu 20.04 with Kubespray

Kubespray는 자동화된 서버 환경구성을 지원하는 도구인 Ansible(앤서블)을 통해 Kubernetes(이하 k8s*)...

Naver Blog

Minikube 쿠버네티스 환경에서 레플리카셋(Replicaset)으로 Pod 복제하여 NodePort로 클러스터 외부에 노출하기

이번에는 지난 Minikube로 Kubernetes(이하 K8S)를 설치했던 포스팅에 이어, 동일 K8S 환경에서 Pod...

Naver Blog

Minikube로 Ubuntu Server 20.04 LTS에 Kubernetes 설치하고, Pod 생성해 Application 배포 및 동작 테스트하기

Minikube는 Mini + Kubernetes의 약자로 말그래도 작은 규모의 Kubernetes(이하 K8S) 설치환경을 제...

Naver Blog

APACHE + PHP 웹 개발환경을 Dockfile로 직접 빌드해서 도커 컨테이너 이미지 생성/배포하기

지난 포스팅에서는 아래와 같이 기존의 최신 Ubuntu 20.04 LTS 컨테이너 이미지를 실행하고, 그 위에 ...

Naver Blog

기존 Ubuntu 도커(Docker) 컨테이너 이미지로 Apache + PHP 웹 개발환경 컨테이너 이미지를 직접 생성/배포/실행하기

이번 포스팅에서는 쿠버네티스 실습 포스팅에서 활용하기 위한 도커 컨테이너 이미지를 직접 만들어 보고 ...

Naver Blog

Lenovo 씽크패드(ThinkPad) W510 노트북 분해/먼지제거/팬청소/SSD,RAM 교체/CPU 서멀구리스 재도포하기

오늘은 2010년 출시한 레노버(Lenovo)社의 고성능 워크스테이션 노트북 '씽크패드(ThinkPad) W510...

Naver Blog

Wireshark로 네트워크 지연 탐지 및 지연 패킷 분석하기

이번 포스팅에서는 Wireshark를 통해 네트워크 지연 장애를 한번 분석해보고자 한다. 이를 위해 아래 [그...

Naver Blog

계정 비밀번호 입력없이 Ubuntu에 자동 SSH 자동 로그인 접속하기

최근 여러대의 서버를 동시에 관리해보면서 매번 원격으로 SSH접속을 할때마다 각 계정의 Password를 ...

Naver Blog

네트워크 속도 측정 후, Wireshark로 직접 세션 별 패킷 분석하기

이번 포스팅에서는 아래와 같이 현재 집에서 이용중인 KT 회선을 개인 PC에 유선으로 연결하여 외부 네...

Naver Blog

X2Go로 Ubutntu Server에 설치된 Wireshark를 GUI 원격실행 하기

Ubuntu Server 버전에서는 GUI를 지원하지 않기 때문에 Wireshark를 설치할 경우 정상적으로 실행되...

Naver Blog

Ubuntu 20.04 LTS에 Wireshark 최신버전(v3.4.5) 소스파일 직접 컴파일 설치하기

Ubuntu에서는 'apt-get install wireshark'란 명령어로 apt 도구를 통해 손쉽게 Wireshark 설...

Naver Blog

Tasksel로 Ubuntu Server에 Desktop 환경 구축 및 CLI/GUI 부팅설정하기

Ubuntu Desktop버전은 Server 버전에 비해 시스템 리소스를 많이 사용하기 때문에 리눅스 기반 시스템을...

Naver Blog

[안내]『개념이 보이는 네트워크 기초』 네트워크 기본서 출간 안내

블로그를 하면서 처음으로 공지사항을 올리네요. 2년전 이맘때 쯤 좋은 기회가 생겨 네트워크 입문자부...

Naver Blog

Ubuntu 20.04 LTS 서버 USB 부팅디스크 만들고 설치하기

지금까지 오픈소스 포스팅을 진행하면서 대부분 Ubuntu 16.04 LTS 버전을 기준으로 진행했었다. 하...

Naver Blog

OpenWrt 설치된 샤오미 공유기(Mi WiFi Mini, R1CM) 원래 펌웨어로 복구하기 (공장 초기화)

이번 포스팅은 지난번 'OpenWrt 설치편(1)' 포스팅을 통해 OpenWrt를 설치한 샤오미 유...

Naver Blog

Ubuntu 20.04 LTS 버전에 Floodlight Master 설치하고 Mininet으로 OVS 연결 테스트하기

지난 2020년 2월 오픈소스 SDN제어기 'Floodlight'의 제공 업체인 Big Switch Networ...

Naver Blog

라즈베리 파이3에 Ubuntu MATE 20.10 최신버전 설치하기

구글링을 해보면 라즈베리파이3 모델(3B/3B+)에 Ubuntu MATE를 설치하는 방법은 쉽게 나온다. ...

Naver Blog

Google Assistant + Snowboy + MPD를 활용한 『A.I 음악 스피커』 개발하기(3)

와 ~~!! 드디어 마지막 포스팅이다. 이번 포스팅에서는 라즈베리파이에 Google Assistant, Snowboy ...

Naver Blog

Google Assistant + Snowboy + MPD를 활용한 『A.I 음악 스피커』 개발하기(2)

지난 포스팅에서 우리는 A.I 음악스피커 개발에 필요한 마이크와 스피커를 가공하고 라즈베리파이에 ...

Naver Blog

Google Assistant + Snowboy + MPD를 활용한 『A.I 음악 스피커』 개발하기(1)

이번 포스팅에서는 오픈소스 인공지능 플랫폼인 Google Assistant와 호출어 기반의 음성인식 기능을...

Naver Blog

2021년 Python3.5 지원중단에 따른 라즈베리파이3B에 Google Assistant 설치하기

2021년 Python 3.5버전에 대한 공식지원이 중단되었다. 그렇다고 Python3.5를 이용하지 못하는 것은 ...

Naver Blog

라즈베리파이3B+에 구글 어시스턴트(Google Assistant)설치하기 (21년 2월 기준 가이드)

Google Assistant(구글 어시스턴트)는 2016년 Google에서 발표한 음성인식 기반의 인공지능 서비스...

Naver Blog

고장난 삼성 SPH-P9200 접이식 UMPC 노트북 분해/먼지제거/HDD를 SD카드로 교체수리/윈도우XP 재설치하기

이번 포스팅에서 다룰 제품은 삼성에서 2007년 출시한 UMPC인 디럭스미츠(모델명 'SPH-P9...

Naver Blog

쿠버네티스의 등장배경/구조 및 기능/동작원리 이해하기 - Analyzing the Background / Mechanism / Architecture of Kubernetes

이번 포스팅은 오픈소스 컨테이너 클러스터 플랫폼인 쿠버네티스에 대한 공부를 시작하면서 직접 이해...

Naver Blog

Q-VPN(Quantum VPN, 양자 VPN)을 활용한 물리 VPN 서버, 클라이언트 구축하기-Building a VPN Server, Client using QVPN

이번 포스팅에서는 지난번 'QDK.Q# [활용편1]'에서 개발한 Q-VPN(양자VPN)을 가...

Naver Blog

QDK, Q#기반 양자난수생성기를 OpenVPN에 적용한 양자 VPN(Q-VPN) 개발하기-Developing Quantum VPN using QDK and OpenVPN

OpenVPN에서는 SSL 라이브러리를 통해 생성한 유사난수 값을 가지고 VPN단말 간 세션키 생성...

Naver Blog

QDK, Q#기반 양자난수생성기를 OpenVPN에 적용한 양자 VPN(Quantum VPN,Q-VPN) 개발하기

OpenVPN에서는 SSL 라이브러리를 통해 생성한 유사난수 값을 가지고 VPN단말 간 세션키 생성...

Naver Blog

OpenWrt가 설치된 샤오미 유무선공유기로 음성인식 음악 플레이어 개발하기(3)-Speech Recognition Music Player on OpenWrt

마지막 포스팅이다. 지난 포스팅에서는 [그림 1]과 같이 샤오미 공유기에 음성인식을 위한 마이크, 음...

Naver Blog

OpenWrt가 설치된 샤오미 유무선공유기로 음성인식 음악 플레이어 개발하기(2)-Speech Recognition Music Player on OpenWrt

지난 포스팅에서는 OpenWrt가 설치된 샤오미 공유기에서 음성인식을 위해 무손실 오디오 데이터 압축...

Naver Blog

OpenWrt가 설치된 샤오미 유무선공유기로 음성인식 음악 플레이어 개발하기(1)-Speech Recognition Music Player on OpenWrt

지금까지 샤오미 유무선공유기에다가 OpenWrt설치해서 SDN 무선제어부터 NAS, 원격 음악플레이...

Naver Blog

Ubuntu PC에 OpenWrt 크로스컴파일(Cross-Compile) 개발 환경 구축하기

최근 OpenWrt가 설치된 디바이스에 여러가지 라이브러리를 탑재하기 위해서 관련 소스파일을 해당 ...

Naver Blog

고장난 맥북프로(Mid, 2010)에서 디스플레이/메인보드/키보드/ODD/HDD/스피커/RAM/냉각팬까지 완전분해하기

기존에 개발용으로 사용중이던 맥북프로 'A1278 Early-2011' 모델의 키보드가 고장나고 베...

Naver Blog

Microsoft社의 QDK와 Q#을 이용하여 Ubuntu 16.04에 Python기반의 양자난수발생기(QRNG) 만들기

Microsoft社에서는 'Microsoft Quantum'이라는 이름으로 양자기술을 오픈소스로 제공해주...

Naver Blog

JAVA라이선스 정책 변경 내용과 그에 따른 Ubuntu에 최신 JAVA 버전 설치가이드

2019년 4월 Oracle의 JAVA 라이선스 정책이 변경된지 1년이 지났다. 그당시 Oracle JAVA 라...

1 2