아래 HL2UVH 오엠님께서 알려주신 방법에 따라 XRF070 설치에 사용했던 방법을 다시 정리해 올립니다.
아파치 웹서버를 설치하는 부분 등을 추가했습니다.
멋진 소스코드를 만들어주신 HL2UVH 오엠님께 감사드립니다.
XRF070 D-Star Reflector 설치 방법
작성일 : 2016.11.07
작성자 : HL5BPL 유영근
라즈베리파이에 HL2UVH 오엠이 빌드한 dxrfd V3.17 설치하는 순서입니다.
한국 D-Star User Group 카페에 UVH 오엠이 올린 글 (http://cafe.daum.net/d-star/b5Fu/43)
을 약간 보완하고, apache 웹서버의 시작페이지 디폴트 디렉토리가 /var/www/html/ 인 것에 맞추어 대시보드 디렉토리를 수정했습니다.
사용 하드웨어 : Raspberry Pi 2B 또는 3B
OS : Raspbian Jessie Lite
D-Star 리플렉터 서버 프로그램
: dxrfd V3.17 by HL2UVH
Dashboard : rev. 31.10.2015
<OS 설치>
Raspbian Jessie Lite 이미지를 다운로드하여 Win32DiskImager로 SD 카드에 설치
이미지
파일 다운로드 사이트 : https://www.raspberrypi.org/downloads/raspbian/
pi로 로그인
$ sudo raspi-config
Time Zone을 Asia/Seoul로 설정, 파일 시스템 크기를 SD카드 최대 용량으로 확장
리부팅
<시스템 패키지 업데이트>
pi로 로그인
<pi의 패스워드 변경>
$ passwd
현재 암호 raspberry, 바꿀 암호 입력후 다시 확인 입력하여 변경
$ sudo apt-get update
$ sudo apt-get upgrade
업그레이드 중간에 나오는 메시지는 무시 (q 눌러서 빠져 나옴)
<필요 패키지 및 dxrfd 소스 코드 다운로드>
$ sudo apt-get install git
$ git clone https://bitbucket.org/sojubox/dxrfd.git # HL2UVH 오엠의
Repository
<컴파일>
$ cd ~/dxrfd
$ make # dxrfd 실행파일 컴파일, 생성
$ cd ~/dxrfd/xrfd/xrf_lh
$ ./xrf_lh.doit # 대시보드 생성 프로그램
xrf_lh 컴파일, 생성
<설치 디렉토리 생성>
$ sudo mkdir -p /opt/dxrfd #
dxrfd 프로그램 주 설치 디렉토리
$ sudo mkdir -p /var/www/html # 대시보드 웹페이지 파일용 디렉토리 (아파치 웹서버 기준)
<설치
디렉토리에 파일 복사>
$ sudo cp ~/dxrfd/dxrfd /opt/dxrfd # dxrfd 실행파일
$ sudo cp ~/dxrfd/dxrfd.SVC /etc/init.d/dxrfd # 부팅시 자동기동 스크립트
$ sudo cp ~/dxrfd/blocks.txt /opt/dxrfd/ # 접속 금지 시킬 사용자 목록
$ sudo cp ~/dxrfd/dxrfd.cfg /opt/dxrfd/ # dxrfd 주 설정 파일
$ sudo cp ~/dxrfd/xrfs.txt /opt/dxrfd/ # 링크할 상대 리플렉터 목록 파일
$ sudo cp ~/dxrfd/xrf_lh/xrf_lh /opt/dxrfd/ # 대시보드 생성 프로그램 실행 파일
$ sudo cp ~/dxrfd/xrf_lh/xrfs.url /opt/dxrfd/ # 링크할 상대 리플렉터의 대시보드 URL
$ sudo cp ~/dxrfd/dashboard/* /var/www/html # 대시보드 웹페이지 표시용 그림파일 등
<데몬 등록 : 부팅시 데몬 모드로 자동 기동>
$ sudo
chmod 755 /etc/init.d/dxrfd # 부팅 스크립트의 실행 레벨 설정
$ sudo systemctl daemon-reload
$ sudo systemctl enable dxrfd
<반복 작업을 크론탭에 등록>
$ sudo
crontab –e
다음 내용을 입력하고 저장
--------------------------------------------------------------------------------------------------------------
# 대시보드 생성 매1분 마다
* * * * * /opt/dxrfd/xrf_lh HL5BPL XRF070 "Korean D-Star User
Group" 127.0.0.1 YES /opt/dxrfd/xrfs.url 60 "" > /var/www/html/index.html
# XLX071의 C모듈과 링크 매1시간 마다
0 * * * * /bin/echo "lrf CXRF071C" | /bin/netcat -uq 1 127.0.0.1
30002 2>&1 > /dev/null
--------------------------------------------------------------------------------------------------------------
<서버 설정 파일 수정>
$ sudo nano /opt/dxrfd/dxrfd.cfg
다음과 같이 수정후 저장
--------------------------------------------------------------------------------------------------------------
# dxrfd.cfg configuration file for dxrfd
# Lines starting with a pound sign are discarded.
# Lines containing a pound sign are also discarded.
# Information on each line must start in the left-most position.
# The reflector name must start with XRF
# The name length must be exactly 6 characters, no less, no more.
# Replace zzz with a 3-digit number
# WARNING: Use your own 3-digit number
OWNER=XRF070
# This must be your personal USER callsign and registered with K5TIT
# Set it correctly and then remove the # from the beginning of the line
ADMIN=HL5BPL
# dxrfd server listens on this IP address for linked repeaters.
# Use 0.0.0.0 for most cases
LISTEN_IP=0.0.0.0
# dxrfd listens on this UDP port for linked repeaters.
LISTEN_PORT=30001
# dxrfd listens on the command port for admin commands
COMMAND_PORT=30002
# capacity for linked repeaters that use g2_link, ...
MAX_USERS=100
# log QSO details
QSO_DETAILS=N
# LINK STATUS FILE
STATUS_FILE=/opt/dxrfd/XRF_STATUS.txt
# Remote XRF reflectors, this file can be empty
USERS=/opt/dxrfd/xrfs.txt
# The file of blocked callsigns, it can be empty
BLOCKS=/opt/dxrfd/blocks.txt
# capacity for connected users that use one of these: DVAPTool, DVTool,
r2g2_p hotspot, ...
MAX_OTHER_USERS=100
--------------------------------------------------------------------------------------------------------------
<상호
링크할 리플렉터를 등록>
$ sudo nano /opt/dxrfd/xrfs.txt
다음 내용을
추가
--------------------------------------------------------------------------------------------------------------
XRF071<탭>xrf071.dv.or.kr
--------------------------------------------------------------------------------------------------------------
<대시보드
표시용 아파치 웹서버 설치>
$ sudo apt-get install apache2
$ cd /var/www/html
$ sudo mv index.html index-apache-original.html # 아파치 기본 초기화면을 별도로 보관
<대시보드
표시중 링크된 상대 리플렉터 이름 옆 까만 동그라미 안 화살표의 링크 URL 지정>
$ sudo nano /opt/dxrfd/xrfs.url
다음 내용을
기입하고 저장
--------------------------------------------------------------------------------------------------------------
# 링크된 리플렉터 이름, 공백, 상대 리플렉터의 대시보드 URL
XRF071 <탭> http://xrf071.dv.or.kr/db2
--------------------------------------------------------------------------------------------------------------
<재기동>
$ sudo reboot
Pi 로 로그인
데몬 프로그램이
잘 작동하고 있는지 프로세스 확인
$ sudo ps –ef | grep dxrfd
$ sudo ps –ef | grep apche
<XRF070C와 XRF071C 링크>
$ nc –u 1270.0.1 30002
upd # update : 설정파일 xrfs.txt 읽어들여 연결할 리플렉터 목록 갱신
lrf CXRF071C # Link XRF
: XRF070 C를 XRF071 C와
링크
lrf CXRF071X # XRF070의 C를 XRF071로부터 링크 해제
pl # Print
Link : 연결된 리플렉터 나열
pu # Print
user : 연결된 사용자 나열
Ctrl-C # nc 종료
이후 crontab에 의해 자동 링크 유지
<DDNS 사용시 공유기 설정 : ipTIME 공유기 사용의 경우>
<포트포워드 설정 : ipTIME 공유기 사용의 경우>
<<< 끝 >>>
첫댓글 궁금증이 발동해서 질문 하나 드립니다.
dxrfd에서 특정 모듈만 가동할 수도 있는지요? 예를 들어 모듈 C만 운용한다든지 하는 설정이 가능한지 궁금합니다. 그게 가능하다면 약간의 꼼수를 써서 동일 DDNS의 리플렉터에서 여러개의 모듈을 XLX071과 연결할 수도 있을 것 같아서요.
하나의 모듈만 활성화 가능한지는 소스코드를 잘 아시는 UVH 오엠께서 답변을 해주셔야 할 것 같고...
여러개의 모듈을 상호 링크시키는 것은 lrf 명령을 여러번 실행시키면 현상태에서도 가능할 것 같습니다.
@HL5BPL - 하나의 모듈만 활성화시키는것은 현재 상태에서 안됩니다.
- 어러개의 모듈을 링크시키는것도 안될것으로 보이는데요 ^^
@HL2UVH 필요가 없어서 해보지 않았는데, 테스트가 필요하군요.
HL2UVH : 하나의 모듈만 활성화하는 것은 안되는군요.
HL5BPL : UDP포트를 추가로 포트포워딩하면 가능할수도 있겠네요. 한번 실험해 보시죠.
추가 포트포워드는 필요하지 않습니다.
테스트해보니 한 리플렉터에 대해서는 한 모듈의 링크만 가능하네요.
오래전 이미 TUK 신오엠과 당국이 수많은 테스트 했지만 많이 실망 스러웠던 부분이지요. 지금 XLX 로 갈아탄 가장큰 이유중 하나이지요 . 그리고 다른 이유도 많이 있지요만~. 이미 신오엠과 당국은 오래전 에 버린 (패) 라고 생각 합니다. 테스트 많이 해보시고 좋은 결과 내시기 바랍니다.