작은 PC 한 대가 서버 지도가 되다
192.168.0.197 서버의 첫 화면은 "Netcity Links"라는 이름을 달고 있다. 겉으로는 내부 링크를 모아둔 시작 페이지처럼 보이지만, 실제로는 지금 넷시티 실험실이 어떤 방향으로 확장되고 있는지를 보여주는 운영 지도에 가깝다. 이 페이지에는 우분투 중계서버 본체, USB로 연결된 안드로이드폰, Termux 기반 APM 노드, 192.168.0.195 별칭 IP 중계, 서버 가상 모니터, G5/G7 사이트 계정군까지 한꺼번에 정리돼 있다.
이번 특집은 바로 이 링크 포털을 기준으로 192.168.0.197 서버의 현재 모습을 읽어본 기록이다. 기사 작성 시점인 2026년 5월 7일 현재, 주요 내부 페이지인 197 메인, USB 안드로이드 진입 페이지, Termux 문서, 195 중계 현황판, USB 직접 공유기 IP 안내, 안드로이드폰 모니터링 페이지, G5-site01, G7-main, netboard는 모두 HTTP 200으로 응답했다. 반면 192.168.0.195:8082/8083과 192.168.0.108:8082/8083 직접 포트는 4초 확인 기준 응답이 없었다. 포털 표기처럼 이 영역은 "상시 서비스"라기보다 폰과 Termux 상태에 따라 열리는 대기형 실험 링크로 보는 편이 정확하다.
197 서버 본체: 오래된 하드웨어 위의 새 역할
링크 포털이 밝히는 PC 환경은 꽤 구체적이다. 서버는 Ubuntu 22.04.5 LTS Jammy 기반이며, 커널은 5.15.0-177-generic이다. 호스트명은 netcity-DeskTop-System이고, 장비는 Intel Celeron D 3.33GHz 단일 코어 구성이다. 메모리는 1.9GiB, 디스크는 110GB 중 약 18GB를 사용하고 있으며, 네트워크에는 192.168.0.197/24와 192.168.0.195/24가 함께 걸려 있다. 최신 서버 장비라고 부르기는 어렵지만, 오히려 이 점이 이 페이지의 성격을 선명하게 만든다. 무거운 한 방보다, 작은 노드들을 이어 붙여 실제 서비스를 구성하는 방식이다.
설치된 주요 프로그램은 Nginx, PHP CLI, MySQL Client, Docker, OpenSSH, ADB, Python이다. 운영 문서 기준으로 웹 서비스 쪽에는 nginx가 앞단에 서고, PHP 8.3 계열 런타임과 MariaDB 10.11 계열 DB가 Docker 컨테이너 기반으로 움직인다. 링크 포털에는 호스트 CLI 버전과 컨테이너 웹 런타임 정보가 함께 보이기 때문에 숫자가 서로 다르게 보일 수 있다. 중요한 것은 역할 분리다. 호스트는 네트워크와 프록시, ADB 포워딩을 맡고, 컨테이너는 웹 런타임과 데이터베이스를 맡는다.
이 서버의 열린 역할은 포트 목록에서 더 분명해진다. 80/443은 웹 진입점, 22는 SSH 운영 통로다. 여기에 127.0.0.1:18080, 18082, 18083, 18022가 안드로이드 ADB 포워딩용 로컬 포트로 쓰인다. 18080은 안드로이드 자체 8080 경량 HTTP 응답, 18082는 Termux PHP 8082, 18083은 Termux Nginx 8083, 18022는 Termux SSH 8022로 이어진다. 즉 197 서버는 웹서버이면서 동시에 스마트폰 서버의 앞단 라우터다.
USB 안드로이드: 스마트폰이 하위 실행 노드가 되는 순간
링크 포털에서 가장 눈에 띄는 영역은 "안드로이드폰 생성 링크"다. Galaxy Wide3가 Android 자체 HTTP 응답 서버로 동작하는 8080 경량 서버, Termux APM 구축 문서, 192.168.0.195 USB 안드로이드 중계 현황판, USB 유선랜 허브 직접 공유기 IP 안내, 서버 가상 모니터 noVNC 페이지, 안드로이드폰 액정 화면 표시 방식이 나란히 배치돼 있다. 이 묶음은 단순 모바일 테스트가 아니라 "스마트폰을 서버 인프라 안쪽으로 편입시키는 실험"이다.
운영 현황 문서에 따르면 현재 구조는 브라우저에서 192.168.0.197 Ubuntu nginx로 들어온 요청이 127.0.0.1:18080을 거쳐 USB ADB forward를 타고 Android phone:8080으로 전달되는 방식이다. 스마트폰이 직접 외부에 노출되는 구조가 아니라, 197 서버가 공개 진입점과 프록시, 인터넷 공급, 포트 전달을 맡는다. 스마트폰은 그 뒤에서 경량 HTTP 응답과 Termux 기반 보조 APM 노드 역할을 수행한다.
이 구조의 장점은 운영 기준점이 흐트러지지 않는다는 데 있다. 스마트폰은 배터리, 발열, 앱 종료, 재부팅, USB 연결 상태 같은 변수에 민감하다. 그런데 197 서버를 앞단에 두면 운영자는 nginx와 ADB 포워딩, systemd 브리지 서비스를 기준으로 상태를 볼 수 있다. 스마트폰 쪽이 흔들리더라도 문제 지점을 "서버 앞단", "USB 포워딩", "폰 내부 서비스"로 나눠 진단할 수 있다. 작은 장비를 실험 노드로 끌어올 때 가장 중요한 안정장치가 바로 이 분리다.
Termux 링크 8082와 8083: 대기형 실험 포트
포털 상단에는 Termux 실행 링크가 네 개 보인다. Wi-Fi 직접 PHP 8082, USB 195 중계 PHP 8082, Wi-Fi 직접 Nginx 8083, USB 195 중계 Nginx 8083이다. 포털은 이 링크들을 "접속 대기"로 표시한다. 실제 확인에서도 192.168.0.195:8082/8083과 192.168.0.108:8082/8083은 4초 기준 HTTP 응답을 돌려주지 않았다. 이는 장애라기보다 설계 성격에 가깝다. Termux 서비스는 폰 상태, Wi-Fi IP, USB 연결, 수동 기동 여부에 따라 살아나는 실험 포트다.
여기서 핵심은 주소가 두 계열로 나뉜다는 점이다. 192.168.0.108은 안드로이드폰이 공유기 Wi-Fi에서 직접 받은 주소로 접속하는 경로다. 이 경로는 197 서버 중계를 거치지 않는 직접 접속 모델이다. 반면 192.168.0.195는 197 우분투 서버에 붙인 별칭 IP를 통해 들어온 요청을 ADB 포워딩으로 안드로이드폰 Termux 쪽에 넘기는 모델이다. 같은 PHP 8082, Nginx 8083이라도 네트워크 철학은 다르다. 하나는 직접 노출, 다른 하나는 중계 노출이다.
이 차이는 향후 운영 전략에서도 중요하다. Wi-Fi 직접 접속은 단순하고 빠르지만, 폰 IP가 바뀌거나 Wi-Fi 상태가 흔들리면 바로 영향을 받는다. 195 중계 방식은 앞단 관리가 가능하고 주소를 고정하기 쉽지만, 197 서버의 ADB 브리지와 포워딩 상태에 의존한다. 포털이 두 모델을 나란히 둔 것은 "어느 방식이 정답인가"를 미리 정해버리지 않고, 현장에서 어떤 경로가 더 안정적인지 계속 비교하겠다는 뜻으로 읽힌다.
192.168.0.195 별칭 IP: 하나의 PC에 두 번째 입구 만들기
192.168.0.195 USB 안드로이드 중계 현황판은 이 포털에서 매우 흥미로운 링크다. 197 서버에 195 별칭 IP를 얹고, 이 주소의 특정 포트를 안드로이드폰 Termux 서버로 넘기는 방식이기 때문이다. 일반적으로 내부 서버를 운영할 때는 하나의 물리 장비에 하나의 IP만 떠올리기 쉽다. 하지만 별칭 IP를 쓰면 같은 PC라도 역할에 따라 다른 입구를 가질 수 있다. 197은 메인 포털과 서버 관리의 기준점, 195는 안드로이드 USB 중계 전용 입구처럼 나눠 볼 수 있다.
이 방식은 작은 실험 서버에서 특히 실용적이다. 실제 장비를 여러 대 두지 않아도, 서비스 흐름을 IP 단위로 나눠 관찰할 수 있다. 예를 들어 197의 80번은 전체 포털, 195의 80번은 USB 안드로이드 중계 현황판, 195의 8082/8083은 Termux PHP/Nginx 중계처럼 역할을 구분할 수 있다. 장애가 났을 때도 사용자는 "어느 IP와 어느 포트가 죽었는가"를 기준으로 원인을 좁힌다. 링크 포털은 이 구조를 설명 페이지와 실제 주소로 동시에 보여준다.
서버 화면을 폰에서 보기: noVNC와 안드로이드 디스플레이
링크 포털에는 네트워크 서버뿐 아니라 화면 운영 링크도 포함돼 있다. "서버 가상 모니터를 안드로이드폰에서 보기"는 192.168.0.197 우분투 서버 안에 TigerVNC 가상 화면을 만들고 noVNC로 공개해, 안드로이드폰 브라우저에서 서버 가상 모니터를 보는 구성이다. 서버가 책상 밑에 있거나 물리 모니터가 없을 때, 브라우저만으로 서버 화면을 확인할 수 있다는 점이 강점이다.
그 옆의 "안드로이드폰 액정 화면 표시 방식"은 Deskreen, Weylus, TethrLink, VNC 같은 도구를 통해 안드로이드폰 액정을 서버/PC 화면 표시 장치처럼 활용하는 방법을 정리한다. 앞의 noVNC가 서버 화면을 폰에서 보는 방향이라면, 이 링크는 폰 화면을 표시 장치로 활용하는 방향까지 포함한다. 결국 포털은 단순 웹서버 목록을 넘어, 입력과 출력, 원격 화면, 모바일 디스플레이를 모두 운영 도구로 묶고 있다.
G5-site01부터 G5-site20까지: 다중 사이트 팜
하단의 "중계서버 생성 링크" 영역은 또 다른 성격의 실험이다. G5-site01부터 G5-site20까지 20개 그누보드5 계정이 등록돼 있고, G7-main과 netboard도 함께 보인다. 설치 맵 기록에 따르면 이 계정들은 2026년 5월 5일에 `/var/www/html` 아래 생성됐고, 각각 별도 DB 이름과 DB 사용자를 갖도록 구성됐다. 웹 설치 시 DB 호스트는 `netcity-mariadb`를 사용하도록 기록돼 있다.
이 목록은 단순 폴더 나열이 아니다. 하나의 중계 서버에서 여러 독립 사이트 계정을 빠르게 생성하고, 각 사이트가 별도 DB를 갖는 구조를 시험한 결과다. G5-site01은 별도 "사이트 계정" 카드로 강조돼 있고, 나머지 G5-site02~20은 동일한 패턴의 사이트 폴더로 이어진다. G7-main은 G7 베타 계열 사이트로 별도 카드 스타일을 가진다. netboard는 자체 게시판/포털 계열 실험과 이어지는 내부 거점이다.
다중 사이트 팜의 의미는 크다. 서버 하나가 뉴스, 포럼, 실험 앱, 지역 포털, 테스트 게시판을 모두 품으려면 사이트 단위 분리가 필요하다. G5/G7 계정군은 그런 분리를 연습하는 실험장이다. 각 계정을 독립적으로 설치하고, DB를 나누고, 링크 포털에서 진입점을 관리하면 하나의 물리 장비 안에서도 여러 프로젝트가 서로를 덜 방해하면서 자랄 수 있다.
운영 관점에서 본 강점과 위험
이 포털의 강점은 명확하다. 첫째, 모든 실험 링크가 한 화면에 모여 있어 운영자가 현재 서버의 구성을 빠르게 떠올릴 수 있다. 둘째, 접속 가능/접속 대기 상태를 구분해 상시 운영 링크와 조건부 실험 링크를 나눠 볼 수 있다. 셋째, 안드로이드폰, 별칭 IP, noVNC, G5/G7 사이트 팜처럼 서로 다른 성격의 실험을 하나의 진입점으로 묶는다. 넷째, 작은 장비 위에서도 프록시, 컨테이너, 포워딩, 다중 DB 계정을 조합해 실제 서비스형 구조를 만들 수 있음을 보여준다.
위험도 있다. 이 서버의 하드웨어는 가볍다. 단일 코어 Celeron D와 2GB 안팎의 메모리는 대규모 트래픽이나 무거운 PHP/DB 작업을 오래 버티는 용도와는 거리가 있다. G5/G7 계정 20여 개, 뉴스/포럼/모니터링 링크, 안드로이드 브리지, Docker, MariaDB가 한 장비에 몰리면 작은 설정 실수도 전체 응답성에 영향을 줄 수 있다. 따라서 이 구조의 핵심은 "많이 올리는 것"이 아니라, 각각의 역할과 한계를 눈에 보이게 관리하는 것이다.
보안 관점에서도 주의가 필요하다. SSH, 웹, 포워딩, 별칭 IP, VNC 계열 도구, 스마트폰 Termux SSH가 모두 같은 운영 지도 안에 들어와 있다. 내부 실험이라 해도 인증, 방화벽, 외부 노출 범위, 관리자 URL 보호, 파일 업로드 권한, DB 계정 권한을 분리해야 한다. 특히 noVNC와 Termux SSH 같은 운영 편의 도구는 편한 만큼 노출되면 위험하다. 링크 포털은 편리한 지도이지만, 동시에 접근 통제 목록이기도 하다.
이 페이지가 보여주는 넷시티식 운영법
192.168.0.197 링크 포털이 흥미로운 이유는 완성된 대형 인프라를 자랑하지 않아서다. 오히려 작은 PC, 구형 안드로이드폰, USB 케이블, 별칭 IP, 오픈소스 게시판, Docker 컨테이너, 브라우저 기반 원격 화면 같은 현실적인 재료들이 서로 맞물리는 과정을 보여준다. 서버를 거창한 장비가 아니라 "연결을 설계하는 자리"로 보는 태도다.
이 구조에서는 스마트폰도 서버가 되고, 별칭 IP도 별도 입구가 되며, VNC 화면도 운영 도구가 된다. G5/G7 사이트 계정들은 웹 프로젝트의 실험 밭이 되고, netboard는 자체 게시판형 운영의 거점이 된다. 포털 화면은 그 모든 조각을 한 장의 지도처럼 보여준다. 그래서 이 페이지는 북마크가 아니라 운영 노트다. 지금 무엇이 살아 있고, 무엇이 대기 중이며, 어떤 실험이 다음 단계로 갈 수 있는지를 한눈에 말한다.
결국 192.168.0.197 서버의 가치는 성능표 하나로 설명되지 않는다. 이 서버는 "작은 자원으로 어디까지 연결할 수 있는가"를 묻는 실험대다. 80/443 웹 진입점에서 시작해 USB 안드로이드폰, 195 별칭 IP, Termux PHP/Nginx, noVNC, G5/G7 사이트 팜으로 이어지는 흐름은 한 대의 오래된 PC가 여전히 살아 있는 인프라가 될 수 있음을 보여준다. 넷시티의 다음 확장은 거대한 장비 교체보다, 이 링크 지도를 얼마나 안정적으로 정리하고 자동화하느냐에 달려 있다.
확인된 주요 링크 요약
확인된 주요 HTTP 200 링크는 `http://192.168.0.197/`, `/usb-android-galaxy-wide3/`, `/usb-android-termux-server/`, `/android-usb-195/`, `/android-usb-direct-router-ip/`, `/android-phone-monitor/`, `/android-phone-display-monitor/`, `/g5-site01/`, `/g7-main/`, `/netboard/`이다. 접속 대기 또는 조건부 실행 링크는 `192.168.0.195:8082`, `192.168.0.195:8083`, `192.168.0.108:8082`, `192.168.0.108:8083` 계열로 확인됐다. 이 차이를 알고 보면 링크 포털은 훨씬 읽기 쉬워진다. 녹색으로 살아 있는 링크는 현재 운영 축이고, 대기 링크는 스마트폰/Termux 실험이 다시 켜질 때 확장될 가지다.