[카테고리:] 프로그래밍
-

유해 차단을 회피하는 사이트
사이트를 유해 사이트로 분류하며 각 통신사에 차단 지시를 내리는 곳은 “방송통신심의위원회” 이다. 방송통신심의위원회의 차단 의결에도 불구하고, 불법 유해 사이트들 중에서 warning.or.kr 페이지를 회피 기동하는 곳이 심심치 않게 보인다. 이 사이트들은 크게 두가지로 부류로 나뉘어 진다. (1) 뉴토끼 처럼 도메인을 계속 구매하는 곳과 (2) IP 주소를 주기적으로 변경하는 곳으로 나뉘어 진다. 방송통신심의위원회(이하 방심위)에서 이미 상황을 알고…
-

Dokku를 이용한 Sveltekit 배포 스크립트
이때껏 Sveltekit로 간단한 사이트를 몇 개 만들었다. 매번 수동으로 Dokku를 설정하는 것이 번거로워서 이 글에 설정법을 간단히 정리한다. 이 글은 adapter-node 만을 다룬다. adapter-node의 기본 설정 방법은 https://svelte.dev/docs/kit/adapter-node 에서 확인할 수 있다. 다른 어뎁터로 빌드했다면 적용되지 않는다. Dokku에 프로젝트를 올리면 herokuish가 package-lock.json 와 package.json 를 확인하여 npm 프로젝트로 인식한다. 그리고 알아서 nodejs 빌드팩으로 프로젝트를 빌드한다.…
-

BYOIP를 이용한 Anycast의 라우팅 리전(지역) 관찰기 (Vultr)
이전 글에서 IPXO에서 IP를 임대한 후, BYOIP와 BGP를 이용하여 VM에 IP를 적용 시키는 것을 해 보았다. 이번 글에서는 여러 리전에서 BGP를 발사해 볼 예정이다. 실제로 BGP 전파시에 얼마나 시간이 걸리는지에 대한 글이 전무했는데, 이 글에서는 실제 Anycast 사용 경험을 작성한다. 이전 글을 못 읽은 분들을 위해 간략히 BGP를 설명하려 한다. 본인이 IP주소를 가지고 있다면 주변…
-

IPXO 에서 IP블록(/24) 임대 후 BYOIP 사용해 보기
전체 과정 이 글에서는 Oracle Cloud와 Vultr에서 Bring your own IP 를 사용하는 방법을 다룬다. 궁극적으로, 몇개의 글에 걸쳐 BYOIP가 잘 작동하는지와 Anycast가 예상대로 진행되는지를 다룰 것이다. 전체적인 과정 자체는 AWS, GCP에서도 유사 할 것이다. Bring Your Own IP를 사용하기 위한 과정은 크게 다음과 같다. BYOIP를 사용하기 위한 비용은 다음과 같이 쓰였다. (업체 및 IP…
-

Linux TUN 장치 기본 다루기
리눅스에서 TUN 인터페이스를 이용해서 이전에 썻던 Mutli-Path 오버레이 네트워크를 만들고 있다. 현재는 TUN 제어 자체는 어떻게 됐는데, UDP 소켓을 관리하고 연결 정보를 처리하는데 조금 어려움이 있다. 연결 관리 구조체 하나를 상위의 전체 관리 모듈과 본인 스스로에게서 접근하려다 보니 소유권이 발목을 잡는다. 생각해둔 방법이 없진 않은데, 아무래도 코드가 더러워지는것 같아서 꺼려진다. 각설하고, 개발간 초보 TUN 개발자가…
-

(가칭) multipath overlay network에 관한 상상코딩
상상해 보자. 당신은 데이터 송·수신이 중요한 시스템을 만들고 있다. 해당 시스템에서는 잠시간의 네트워크 단절이 큰 영향을 미친다. 그러나 안타깝게도, 불안정한 네트워크 속에서 서비스를 진행해야 한다. 예를 들어, 해외 서버와 지속적인 통신을 해야할 경우가 있다 하자. 해외 트레픽이 넘처나는 22시 즈음이 되면 최대 30%의 확률로 Packet loss가 발생한다. 사내 네트워크와 IDC내 서버간 연결이 필요할 수도 있다.…
-

분산 시스템의 기초 개론 – 1
분산 시스템이란 분산 시스템이란 공동의 목표를 달성하기 위해 여러 노드 또는 서버가 서로 연결된 소프트웨어 아키텍처다. 이 노드들은 네트워크를 통해 서로 통신하고 각자의 작업을 조정하여 통합되고 확장 가능한 컴퓨팅 환경을 제공한다. Patterns of Distributed Systems (2023) 분산 시스템 내에서 작업 부하는 여러 서버에서 처리될 수 있어야 한다. 즉, 수평 확장을 통해서 요청을 동시 처리할 수…
-

iptables와 ipset을 이용하여 한국 IP만 허용
ipset을 이용하면 많은 IP들을 효율적으로 iptables로 관리할 수 있다. 한국 IP의 block 수가 많기 때문에 일일이 iptables에 밀어넣는것 보다는 ipset으로 목록을 관리하는것이 좋다. ipset으로 KRNIC IP 목록 추가 KRNIC에서 제공하는 국내 IP 목록을 다운로드 한다 (https://한국인터넷정보센터.한국/jsp/statboard/IPAS/inter/sec/currentV4Addr.jsp) KRNIC는 /24 블록의 갯수로 IP 대역을 표현한다. csv 다운로드 를 통해서 목록을 다운받으면 된다. ipset은 CIDR로 IP 범위를 설정하므로…
-

Ubuntu에서 Anydesk + x11 + intel 그래픽 드라이버 + HDMI 조합일 때 끊김 발생
TL;DR /etc/X11/xorg.conf 등, x11 설정 파일 또는 /usr/share/X11/xorg.conf.d/20-intel.conf 등의 파일에 아래와 같은 내용을 붙여 넣고 재부팅 (또는 x11 재시작)을 해본다 문제 해결 과정 Anydesk로 Ubuntu를 원격 제어 시도시 약 2초마다 스터터링이 발생하는 문제가 발견됐다. 영어로 검색해도 “이러한 문제가 있어요” 하는 내용이 끝이고, 이렇다 할 무언가가 나오지 않았다. 그래서 삽질을 시작했다. 우선 Anydesk로 접속할 때만 문제가…
-

React – Map등을 이용한 배열 표시 (세미나 자료 #2)
웹 페이지를 만들다 보면 동일한 구조의 데이터를 다룰 일이 많아진다. 예를 들어, 블로그 글 목록에서는 동일한 구조로 된 내용이 가득하다. 어떤 구조체를 A라고 했을때, [A, A, A, A ···]와 같은 형태로 쭈우우욱 있는것을 배열(또는 목록)이라고 한다. 이 목록을 표시하는 방법을 다루고자 한다. 이 내용은 많은 글에서 다루고 있기 때문에, 핵심적인 내용만 다루려고 한다. JSX 떠올리기…