서로 다른 네트워크 연결하기(static-routing)

공유기 2대를 연결시 대부분 1대는 dhcp, firewall 등의 기능을 끄고 dumb ap를 만들어 같은 네트워크로 구성하는것이 일반적이라면 일반적인 케이스인데 격리, 분리 등의 이유로 각각의 공유기가 서로 다른 네트워크로 구성할 경우 routing 설정으로 서로 다른 네트워크를 연결하는 예시입니다. 예시 그림설명 호스트네임 home인 라우터 lan 포트와 호스트네임 OpenWrt인 라우터 wan포트가 케이블로 연결되어 있으며, home의 ip는 10.1.1.1, 내부는 ...

Read more

Disable ipv6 on OpenWrt

내가 OpenWrt에서 ipv6을 비활성화 하는 이유는 일단 ipv6 주소체계가 익숙하지 않고 국내 isp는 개인에게 ipv6을 서비스 하지 않아 어차피 ipv6 이용이 불가하며, OpenWrt에서 ipv6을 활성화 해도 기능상의 문제가 있는것은 아니지만 dhcp에 의해 내부 클라이언트가 ipv6 주소를 할당받는 행위에 대한 log가 지저분해서 나는 ipv6을 비활성화 한다. 참고로 ipv4를 ipv6로 터널링 하는 서비스인 tunnelbroker.net을 이용해 ipv4와 ipv6 ...

Read more

vpr을 이용한 wan/vpn 선택적 라우팅

vpn policy routing을 이용하여 선택적으로 라우팅 하는 간단한 예제입니다. 우리가 웹브라우저를 통해 웹서핑(웹서핑이 됬든 뭐가 됬든)을 한다면 기본적으로 wan으로 트래픽을 라우팅을 합니다. 어떤 필요에 의해 해외의 vpn 서비스를 이용하는 경우라면 vpn이 라우팅한 경로를 따라 웹서핑을 하게 될 겁니다. vpn을 사용하는 특별한 사정이 있겠지만 vpn이 항상 필요한것은 아니며, 그 특별한 사정이 없는 경우라면 오히려 vpn 사용으로 ...

Read more

[firewall예제] Forward wireguard to ipsec/ikev2 tunnel

이전 글에서 방화벽 정책을 이해했으니 이번에는 routeA의 wg0 네트워크 인터페이스에 접속한 wireguard client를 xfrm0 네트워크 인터페이스를 사용하는 ipsec/ikev2 site-to-site vpn에 forward해서 routerB 내부 클라이언트에 접속해 보겠습니다. 관련글 구성 해결방법 routerA에서 wg0와 xfrm0를 연결해야 하는데 방화벽 정책 관련 글 내용에서 본 것 같지 않나요? 이렇게 하면 되겠네요. iptables 명령어로 표현하면 다음과 같습니다. 적용 위의 iptables 명령어를 ...

Read more

OpenWrt 라우터에 cloudflare warp 적용

cloudflare warp는 사용자와 사용자와 가까운 지역의 cloudflare 서버까지 wireguard 프로토콜을 이용하여 암호화 통신을 하고 사용자에게 넘겨받은 데이터를 cloudflare 서버가 대신 통신을 한 후 다시 사용자에게 암호화 통신으로 넘겨주는 방식입니다. 사용자와 cloudflare 서버간 통신시 dns는 물론 트래픽을 암호화해 인터넷 서비스 제공자나 네트워크를 공유하는 사용자로 부터의 프라이버시 침해를 방지하고 제3자가 공공 wifi 등에서의 감시를 막아줍니다. 또한 곧곧에 ...

Read more

OpenWrt batman-adv 로 mesh 구성하기

OpenWrt를 사용하여 mesh network를 만드는 방법과 메시의 라우팅 프로토콜인 batman-adv 를 설정하는 방법입니다. 일러두기 메쉬는 node끼리 통신하기 위한 전용 터널(backhaul)이지 AP가 아닙니다. 따라서 클라이언트가 직접 메쉬 네트워크로 접속할 수 없습니다. 제가 가지고 있는 라우터가 2개밖에 없어 테스트용으로 라우터 2개(gateway, bridge)만으로 메쉬를 구성하였습니다. 그러나 라우터 2개로는 메쉬 의미가 없으며 이 둘이 이더넷 케이블로 연결된 경우 메쉬 ...

Read more

OpenWrt guest wifi 추가하기

guest 와이파이 추가하는 예시입니다. 기본 wlan과 독립적인 개방형 wifi로 네트워크 subnet은 192.168.1.1/24이 아닌 다른 주소를 가지며 게스트 클라이언트는 서로 통신할 수 없도록 격리하는 구성입니다. 필요한 경우 캡티브 포털(Captive potal)을 설치해 사용자별 wifi 사용을 제안하거나 인증 할 수 있습니다. Network /etc/config/network에 guest 네트워크 인터페이스를 생성합니다. Wifi /etc/config/wireless에 guest 네트워크 인터페이스와 바인딩된 guest wifi 인터페이스를 추가합니다. 아래예는 ...

Read more

OpenWrt 빠른 와이파이 로밍(802.11r fast wifi roaming)

모바일 기기의 급격한 증가와 인터넷 보급, 그로인해 와이파이는 우리의 일상이 되어 버렸습니다. 그러나 와이파이를 사용하면서 아직 만족스럽지 못한것 중에 하나는 무선 범위 확장과 로밍 문제일겁니다. 이러한 문제로 와이파이 무선범위를 확장하기 위해 일반적으로 개인사용자들 사이에서는 리피터(Repeater)를 구성하거나 확장기(Extender)라는 장치를 많이 사용하고 있습니다. 그러나 리피터나 확장기는 와이파이 통신으로 라우터의 신호를 받아서 다시 송출하는 방식을 사용하다 보니 속도나 ...

Read more

wol 사용하기

wol(wake on lan)은 특정 네트워크 메시지(매직패킷)을 이용해 대기상태거나 꺼져 있는 컴퓨터를 원격으로 켤 수 있게 해주는 기술입니다. 일러두기 대상 컴퓨터의 BIOS설정과 운영체제 설정은 따로 설명하지 않습니다. wol을 사용하기 위해서는 라우터에 어떠한 종류의 vpn이든 vpn 서버가 구동되어야 하며, 외부에서는 vpn 접속을 해야 합니다. vpn 서버가 구동중이라면 wol 기능을 이용하기 위한 준비가 끝났습니다. (vpn 연결이 아닌 상태에서 ...

Read more

OpenWrt sqm을 통한 트래픽 관리

버퍼블로트(bufferbloat)는 라우터나 기타 네트워크 장비에서 패킷손실을 줄이기 위해 네트워크 버퍼를 증가시켰지만 실제 처리량의 한계로 인해 발생하는 버퍼링으로 지체되는 대기시간으로 무엇인가가 모든 대역폭을 사용하고 있을 경우 tcp 'ack', dns, voip 같은 소형 패킷이 더 큰 패킷에 밀려 버퍼안에 갇혀 랙(lag)이 발생하게 되는데 이런경우 소개할 sqm(smart queue management)은 이런 버퍼블로트 문제를 해결합니다. 일러두기 OpenWrt에는 qos패키지도 있지만 설정이 ...

Read more