전체 글 61

왜 168인가

정확한 결론: “왜 192.168인가?”이유는: 역사적인 클래스 C 주소 범위 내에서,사설 네트워크용으로 지정할 때, IETF에서 임의로 192.168.0.0/16을 선택했기 때문입니다.즉, 기술적인 이유는 없고, “정책적 결정(RFC 1918)“에 의해 “그렇게 정했다”고 보는 것이 맞습니다.⸻배경 요약1. 클래스 기반 체계 당시 • 192.0.0.0 ~ 223.255.255.255는 클래스 C 영역 • 이 중 일부를 사설용으로 지정2. IP 고갈 + NAT 등장 (1990년대 초) • 공인 IP 부족 문제가 터지면서 NAT 개념 도입하고 CIDR로 넘어가는 중 • 내부에서만 쓸 수 있는 IP가 필요해짐 → 사설 IP(Private IP) 지정 필요3. RFC 1918 (1996년): 사설 IP 표준화..

카테고리 없음 2025.05.05

VM OPNsense에서 Wireguard 설정하기

1. WireGuard 기능은 플러그인 없이OPNsense 23.1 이후 버전부터 VPN > WireGuard 메뉴에서 바로 설정 시작2. WireGuard 인스턴스 만들기메뉴: VPN > WireGuard > Local항목 설정:Name: 적당한 이름 (예: wg0)Generate Key: 클릭하여 개인키와 공개키 자동 생성Listen Port: 원하는 포트 (예: 13232)Tunnel Address: WireGuard 터널에서 사용할 주소 (예: 192.168.2.1/24)나머지 항목은 공란으로 두고 Save, 그 뒤 Apply Changes3. 클라이언트 피어 추가 및 QR 코드 생성같은 페이지 하단에서 "Generate New Peer" 클릭항목 설정:Endpoint: OPNsense의 WAN ..

네트워크 2025.05.05

Mikrotik 라우터에서 Wireguard 설정

조건라우터 밑의 사용 대역은 192.168.10.0/24 로 가정한다.와이어가드 트래픽은 윈도우 방화벽의 엣지 차단 조건을 통과하기위해 11.0/24 대역을 사용하는것으로 가정한다.피어가 사용할 주소는 192.168.11.200이다. 1. 와이어가드 인터페이스 생성 및 주소 할당/interface wireguard add name=wireguard1 listen-port=13231 mtu=1420/ip address add address=192.168.11.1/24 interface=wireguard1 2. 와이어가드 트래픽이 외부로 나가는 WAN1 설정/ip/firewall/mangle add chain=prerouting action=mark-routing new-routing-mark=WAN1 pa..

네트워크 2025.05.02

IIS 에서 중앙인증서 설정 Centralized Certificate Store (CCS)

공짜 * 인증서 Let's Encrypt는 자주 갱신해야하므로 인증서갈아끼는것이 일이다.IIS 웹서버를 여러 대 두는경우 인증서 교체가 번거롭기때문에중앙 인증서를 사용한다. 1. 인증을 진행할 중앙 서버에서 폴더 공유를 놓는다. SMB로 놓고, everyone read로 놓는다.2. 중앙서버 IIS에서 중앙인증서 위치 실제 경로를 폴더까지 적는다. 3. 사용자이름은 중앙서버의 것, 암호는 인증서 발급시 넣은것을 넣는다. > 중앙서버 끝 4. 다른서버 B의 IIS에서 5. 중앙인증서 위치 실제 경로를 NetBIOS이름(컴퓨터이름)으로 적는다. \\10.10.0.10\cert-> X\\SERVER1\cert-> O6. 사용자 이름은 중앙서버가 아닌 B의 계정을 넣는다. 7. 인증서 암호는 동일하다. 8...

서버 2025.04.24

IIS 환경에서 CORS 설정

IIS 사용하면서 CORS 설정한다. 1. Application Request Routing 을 설치한다. requestRouter_amd64.msi 2. ARR에서 프록시 설정을 허용한다. HTTP version - Pass through 나머지 그대로 3. IIS CorsModule을 설치한다. https://www.iis.net/downloads/microsoft/iis-cors-module IIS CORS Module : The Official Microsoft IIS SiteHomeDownloadsMicrosoft Supported DownloadsIIS CORS Module OverviewThe Microsoft IIS CORS Module is an extension that enables..

서버 2025.04.24

Spring Security - 하나의 인증 서버에서 여러 인증 방식 처리하기

Spring Security로 하나의 프로젝트에서 여러 인증을 분리하여 처리하는 방법Spring Security와 Spring Authorization Server를 사용해 하나의 프로젝트에서 웹 로그인과 OAuth2 인증을 동시에 처리하려면, 필연적으로 세션 충돌 문제, 사용자 컨텍스트 공유 문제를 마주하게 된다. 이 글에서는 이를 해결하기 위해 여러 개의 SecurityFilterChain 설정과 사용자 타입에 따른 분리 전략, 그리고 세션을 조건부 초기화하는 커스텀 필터를 통해 구조화한 방법을 공유한다.1. 요구사항 개요웹 관리자 로그인: /web/** 경로를 사용하는 JSP 기반의 관리자 페이지 로그인. 세션 기반 인증.OAuth2 인증 (모바일 연동): /oauth2/** 경로를 사용하는 OAu..

어플리케이션 2025.04.03

ESP32 BLE 초기화 및 통신 개념 정리

1. BLE 초기화특징BLE 광고(ADV): BLE는 광고 상태에서 모바일 기기의 블루투스 기능에 보이지 않을 수 있음.권한 연결: 모바일 기기에서 사용자의 블루투스 연결 조작 없이 연결 가능.데이터 전송: 100바이트 이상의 통신 가능.통신 개념: 일대다 연결 통신. 서버 -> 클라이언트는 Notify/Indicate 방식으로 통신.특정 캐릭터리스틱 구독 필요: Notify/Indicate 전 특정 캐릭터리스틱을 구독해야 메시지 수신 가능.구조: BLE는 서비스/캐릭터리스틱 구조로 구성됨.기본 설정초기화AT+RESTORE// BLE 기능 INIT 설정 (1: Client, 2: Server)AT+BLEINIT=2// BLE 이름 설정 (핸드폰에서 보이는 이름)AT+BLEADVDATAEX="PADBANK..

카테고리 없음 2025.01.24

스프링부트에서 MQTT 프로토콜 사용(byte[] payload)

payload를 보통 String 으로 많이 쓰는데 IoT ESP 임베디드 레벨에서는 String으로 보내는데 스트레스가 있는듯하다. 실제로 길이도 많이 늘어난다. 하여 간단히 페이로드를 바이트 배열로 받는 설정을 기록한다.  서버 역할을 하기 위해 cTs이 붙은것만 받는다. 제품은 sTc가 붙은것만 받는다.  바이트배열로 받는 핵심 부분은 아래부분이다.DefaultPahoMessageConverter converter = new DefaultPahoMessageConverter();converter.setPayloadAsBytes(true); @Configurationpublic class MqttConfig { // MQTT 브로커 연결 설정 private static final String B..

어플리케이션 2025.01.03

Mikrotik 라우터 설정 기본

고정ip 기준1. 사용 인터페이스 포트 결정2. 사용할 Address 결정 -> 인터페이스에 등록 및 할당3. ip/route 에 외부로 나갈 게이트웨이 지정=> wan이 여러개인경우 아래 내용 참고(먼저 라우팅 테이블을 여러개 두고 각각 게이트웨이를 지정한 뒤 mangle에서 마크 라우팅 해서 보낸다. 이 경우 외부에서 라우터로 향해서 마크라우팅이 붙지 않는것을 위해 routing/rule에 출발지 ip별 볼 테이블을 지정한다. 혼선을 피하기위해 메인 테이블의 게이트웨이는 빼버린다. ) 방화벽 기능 이용하려면 ?=> Firewall-Filter Rules 사용 포트포워딩 하려면?=> Firewall-NAT에서 지정=> 외부 인터페이스로 나가는 트래픽에 대해 마스커레이드 설정할것주의: 포트포워딩 트래픽..

카테고리 없음 2025.01.03