안녕하세요. 이번에는 U5PVR 에 음성통화 서버를 설치해 보겠습니다.


프로토콜로써 SIP 을 사용하며 서버로 asterisk 가 사용됩니다.


실제로 asterisk 를 상세하게? 사용하기 위해서는 컴파일 작업을 해야 최신버전을 설치할 수 있고 마음대로 기능을 넣었다가 뺐다가 할 수 있습니다. 


asterisk 의 홈페이지는 아래와 같습니다.


http://www.asterisk.org/



기본적으로 웹 UI 를 통해서 관리를 하도록 FreePBX 나 digium-gui 를 설치할 수 있지만, 이번 게시글의 목표는 통화가 되게 하는 것임으로 최대한 간단한 방법으로 설치하는 방법을 작성하겠습니다.


그럼 시작합니다~~



1. asterisk 패키지 설치하기 및 작동 테스트


아래의 명령어를 통하여 asterisk 를 설치합니다. 실제로 설치되는 버전은 asterisk 11 버전이네요.


root@u5pvr-debian:~# apt-get install asterisk

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following extra packages will be installed:

  asterisk-config asterisk-core-sounds-en asterisk-core-sounds-en-gsm asterisk-modules asterisk-moh-opsound-gsm asterisk-voicemail freetds-common gnupg-agent gnupg2 libassuan0 libcfg4 libcoroipcc4 libcpg4

  libfreeradius-client2 libgmime-2.6-0 libgomp1 libgpgme11 libgsm1 libical1a libiksemel3 libjack-jackd2-0 libksba8 libneon27-gnutls libodbc1 libopencore-amrnb0 libopencore-amrwb0 libopus0 libpci3 libperl5.20

  libpj2 libpjlib-util2 libpjmedia-audiodev2 libpjmedia-codec2 libpjmedia-videodev2 libpjmedia2 libpjnath2 libpjsip-simple2 libpjsip-ua2 libpjsip2 libpjsua2 libportaudio2 libpq5 libpth20 libresample1

  libsamplerate0 libsensors4 libsnmp-base libsnmp30 libsox-fmt-alsa libsox-fmt-base libsox2 libspandsp2 libspeex1 libspeexdsp1 libsqlite0 libsrtp0 libsybdb5 libwavpack1 pinentry-gtk2 sox

Suggested packages:

  asterisk-doc asterisk-dev asterisk-ooh323 asterisk-dahdi asterisk-vpb gnupg-doc parcimonie xloadimage gpgsm jackd2 libmyodbc odbc-postgresql tdsodbc unixodbc-bin opus-tools lm-sensors snmp-mibs-downloader

  libsox-fmt-all speex srtp-utils pinentry-doc

The following NEW packages will be installed:

  asterisk asterisk-config asterisk-core-sounds-en asterisk-core-sounds-en-gsm asterisk-modules asterisk-moh-opsound-gsm asterisk-voicemail freetds-common gnupg-agent gnupg2 libassuan0 libcfg4 libcoroipcc4

  libcpg4 libfreeradius-client2 libgmime-2.6-0 libgomp1 libgpgme11 libgsm1 libical1a libiksemel3 libjack-jackd2-0 libksba8 libneon27-gnutls libodbc1 libopencore-amrnb0 libopencore-amrwb0 libopus0 libpci3

  libperl5.20 libpj2 libpjlib-util2 libpjmedia-audiodev2 libpjmedia-codec2 libpjmedia-videodev2 libpjmedia2 libpjnath2 libpjsip-simple2 libpjsip-ua2 libpjsip2 libpjsua2 libportaudio2 libpq5 libpth20

  libresample1 libsamplerate0 libsensors4 libsnmp-base libsnmp30 libsox-fmt-alsa libsox-fmt-base libsox2 libspandsp2 libspeex1 libspeexdsp1 libsqlite0 libsrtp0 libsybdb5 libwavpack1 pinentry-gtk2 sox

0 upgraded, 61 newly installed, 0 to remove and 0 not upgraded.

Need to get 19.2 MB of archives.

After this operation, 38.3 MB of additional disk space will be used.

Do you want to continue? [Y/n]


다음으로 asterisk 는 asterisk 계정으로 구동되기 때문에 안드로이드 권한에 맞추어 aid_inet 그룹에 추가해 주어야 정상적으로 포트가 열립니다. 아래의 명령으로 asterisk 계정을 aid_inet 그룹에 추가해 줍니다.


root@u5pvr-debian:~# adduser asterisk aid_inet

Adding user `asterisk' to group `aid_inet' ...

Adding user asterisk to group aid_inet

Done.


그리고 asterisk 를 한번 재시작 해 줍니다.


root@u5pvr-debian:/etc/asterisk# service asterisk restart

Stopping Asterisk PBX: asterisk.

Starting Asterisk PBX: asterisk.


netstat 명령을 통해 아래처럼 포트가 정상적으로 열렸는지 확인해 줍니다.


추가적으로 asterisk 콘솔을 열어서 정상적으로 동작중인지 확인합니다.


root@u5pvr-debian:~# netstat -nlp | grep asterisk

tcp        0      0 0.0.0.0:2000            0.0.0.0:*               LISTEN      29173/asterisk

tcp        0      0 127.0.0.1:5038          0.0.0.0:*               LISTEN      29173/asterisk

udp        0      0 0.0.0.0:5000            0.0.0.0:*                           29173/asterisk

udp        0      0 0.0.0.0:4520            0.0.0.0:*                           29173/asterisk

udp        0      0 0.0.0.0:5060            0.0.0.0:*                           29173/asterisk

udp        0      0 0.0.0.0:4569            0.0.0.0:*                           29173/asterisk

unix  2      [ ACC ]     STREAM     LISTENING     853931   29173/asterisk      /var/run/asterisk/asterisk.ctl

root@u5pvr-debian:~#


root@u5pvr-debian:~# asterisk -rvvvvvvvvvv

Asterisk 11.13.1~dfsg-2+deb8u2, Copyright (C) 1999 - 2013 Digium, Inc. and others.

Created by Mark Spencer <markster@digium.com>

Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.

This is free software, with components licensed under the GNU General Public

License version 2 and other licenses; you are welcome to redistribute it under

certain conditions. Type 'core show license' for details.

=========================================================================

Connected to Asterisk 11.13.1~dfsg-2+deb8u2 currently running on u5pvr-debian (pid = 29173)

u5pvr-debian*CLI>


설치가 정상적으로 되었습니다.



2. asterisk 기초 설정하기 및 계정 N개 추가하기


일단 설정파일들이 위치하고 있는 폴더로 이동합니다. 


root@u5pvr-debian:~# cd /etc/asterisk/

root@u5pvr-debian:/etc/asterisk# ls

acl.conf            ccss.conf                cel.conf                 codecs.conf       extensions.conf         iaxprov.conf      modules.conf      res_config_mysql.conf    res_stun_monitor.conf  users.conf

adsi.conf           cdr.conf                 cel_custom.conf          confbridge.conf   extensions.lua          indications.conf  motif.conf        res_config_sqlite.conf   rtp.conf               voicemail.conf

agents.conf         cdr_adaptive_odbc.conf   cel_odbc.conf            config_test.conf  extensions_minivm.conf  jabber.conf       musiconhold.conf  res_config_sqlite3.conf  say.conf               vpb.conf

alarmreceiver.conf  cdr_custom.conf          cel_pgsql.conf           console.conf      features.conf           jingle.conf       muted.conf        res_corosync.conf        sip.conf               xmpp.conf

alsa.conf           cdr_manager.conf         cel_sqlite3_custom.conf  dbsep.conf        festival.conf           logger.conf       ooh323.conf       res_curl.conf            sip_notify.conf

amd.conf            cdr_mysql.conf           cel_tds.conf             dnsmgr.conf       followme.conf           manager.conf      osp.conf          res_fax.conf             skinny.conf

app_mysql.conf      cdr_odbc.conf            chan_dahdi.conf          dsp.conf          func_odbc.conf          manager.d         oss.conf          res_ldap.conf            sla.conf

app_skel.conf       cdr_pgsql.conf           chan_mobile.conf         dundi.conf        gtalk.conf              meetme.conf       phone.conf        res_odbc.conf            smdi.conf

asterisk.adsi       cdr_sqlite3_custom.conf  cli.conf                 enum.conf         h323.conf               mgcp.conf         phoneprov.conf    res_pgsql.conf           telcordia-1.adsi

asterisk.conf       cdr_syslog.conf          cli_aliases.conf         extconfig.conf    http.conf               minivm.conf       queuerules.conf   res_pktccops.conf        udptl.conf

calendar.conf       cdr_tds.conf             cli_permissions.conf     extensions.ael    iax.conf                misdn.conf        queues.conf       res_snmp.conf            unistim.conf

root@u5pvr-debian:/etc/asterisk#


sip.conf 파일과 extensions.conf 파일을 삭제합니다.


root@u5pvr-debian:/etc/asterisk# rm sip.conf extensions.conf


sip.conf 파일을 아래과 같이 생성합니다.


저는 테스트로 계정 3개를 생성하였습니다.


root@u5pvr-debian:/etc/asterisk# nano sip.conf


[general]

context=public

allowoverlap=no

udpbindaddr=0.0.0.0:8000    <-- UDP 바인트 포트를 지정합니다. 본래 5060 이나 8000번으로 설정하였습니다.

tcpenable=no

tcpbindaddr=0.0.0.0:8000

transport=udp

srvlookup=yes

language=en

disallow=all

allow=ulaw

allow=ilbc

allow=alaw

allow=gsm

externhost=djjproject.iptime.org    <-- 외부 도메인 주소 혹은 외부 아이피 주소를 넣습니다.

externhostrefresh=10                 

localnet=192.168.100.0/255.255.255.0    <-- 로컬 네트워크 설정을 넣습니다.

# 로컬 네트워크가 192.168.0.XXX 이면 192.168.0.0/255.255.255.0 입니다.

nat=yes


[2001]

type=friend

username=2001    <-- 유저 이름을 지정합니다.

secret=test11!!      <-- 비밀번호를 지정합니다. 

callerid=nexus5     <-- 닉네임으로 사용할 이름을 적습니다.

host=dynamic

context=lan

canreinvite =no

qualify=yes

transport=udp


# 이하는 동일하게 계속 추가하실 수 있습니다.

[2002]

type=friend

username=2002

secret=test11!!

callerid=galaxy nexus

host=dynamic

context=lan

canreinvite =no

qualify=yes

transport=udp


[2003]

type=friend

username=2003

secret=test11!!

callerid=pc

host=dynamic

callerid=pc

host=dynamic

context=lan

canreinvite =no

qualify=yes

transport=udp


다음으로 extensions.conf 파일을 아래의 내용으로 생성합니다.


root@u5pvr-debian:/etc/asterisk# nano extensions.conf


[general]

static=yes

writeprotect=no

clearglobalvars=no


[public]

include => lan


[default]

include => lan


[lan]

exten => _XXXX,1,Dial(SIP/${EXTEN},30)

exten => _XXXX,n,Congestion

exten => _XXXX,n,Busy

exten => _XXXX,n,Hangup


다음으로 rtp 범위를 약간 수정하기 위해서 아래의 파일을 수정합니다.


동시 통화 수가 많을 경우에는 기본값인 10000 ~ 20000 을 사용하시거나 겹치는 경우 범위를 조정해 주시면 됩니다. 이번에는 소규모이기 때문에 1000개만 할당하였습니다.


root@u5pvr-debian:/etc/asterisk# nano rtp.conf



; RTP Configuration

;

[general]

;

; RTP start and RTP end configure start and end addresses

;

; Defaults are rtpstart=5000 and rtpend=31000

;

rtpstart=19000    <-- RTP 시작 포트

rtpend=20000     <-- RTP 끝 포트

;

; Whether to enable or disable UDP checksums on RTP traffic

;

;rtpchecksums=no

;

; The amount of time a DTMF digit with no 'end' marker should be

; allowed to continue (in 'samples', 1/8000 of a second)


이렇게 설정이 끝났습니다.


설정이 끝났음으로 서비스를 재시작 해 줍니다.


root@u5pvr-debian:/etc/asterisk# service asterisk restart

Stopping Asterisk PBX: asterisk.

Starting Asterisk PBX: asterisk.



3. 공유기 포트포워딩 하기


asterisk 의 경우는 아래의 포트를 사용합니다.


아래의 값은 2번에서 설정한 것에 따라 다를 수 있습니다. 


UDP 8000

UDP 19000~20000


아이피타임 공유기상으로는 아래와 같이 등록하시면 됩니다.




4. 통화 해보기 (2명 , 다자간 통화)


먼저 안드로이드에서는 아래의 앱을 주로 사용합니다.


https://play.google.com/store/apps/details?id=com.csipsimple&hl=ko



이 앱을 설치해 줍니다.



앱을 켜게 되면 아래의 설정창이 뜨는데 마음에 드시는 쪽으로 설정해 주시길 바랍니다. 


안드로이드 다이얼러와 통합은 비추천입니다. 


한편, UDP 로 통신을 대기하기 때문에 배터리가 상당히 빨리 빠지는 것을 느끼실 수 있습니다. 상황에 맞게 설정해 주시면 됩니다 ㅎㅎ



다음으로 계정을 설정하라는 알림이 뜨고 Basic 으로 추가를 하시면 됩니다.




아래의 양식에 맞추어 입력해 주시면 됩니다.



한편 3G 4G 모드에서는 사용할 수 없게 되어 있는데 설정 -> 네트워크로 이동하여 아래의 설정을 해 주시면 됩니다.



왼쪽 아래의 열쇄 모양을 누르면 계정 리스트가 나옵니다.



인액티브 상태 및 연결중에서 에러가 났거나 하면 안드로이드 모양을 눌러 연결을 시도합니다.


정상적으로 연결이 되면 등록 완료 라고 뜹니다.



동일하게 갤럭시 넥서스에도 2002번으로 설정을 하여 전화를 걸어 보도록 하겠습니다.



정상적으로 신호가 울리고 통화가 잘 됩니다.



반대로 갤럭시 넥서스 2002 -> 넥서스5 2001 로도 잘 옵니다.



이때 asterisk 서버 로그를 살펴보도록 하겠습니다.


큰 문제가 없이 작동이 잘 됩니다.


root@u5pvr-debian:/etc/asterisk# asterisk -rvvvvv

Asterisk 11.13.1~dfsg-2+deb8u2, Copyright (C) 1999 - 2013 Digium, Inc. and others.

Created by Mark Spencer <markster@digium.com>

Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.

This is free software, with components licensed under the GNU General Public

License version 2 and other licenses; you are welcome to redistribute it under

certain conditions. Type 'core show license' for details.

=========================================================================

Connected to Asterisk 11.13.1~dfsg-2+deb8u2 currently running on u5pvr-debian (pid = 3859)

    -- Unregistered SIP '2002'

    -- Registered SIP '2002' at 192.168.100.1:55133

[Apr  5 16:27:16] NOTICE[3894]: chan_sip.c:27868 handle_request_subscribe: Received SIP subscribe for peer without mailbox: 2002

    -- Unregistered SIP '2001'

    -- Registered SIP '2001' at 110.70.54.124:22120

[Apr  5 16:27:20] NOTICE[3894]: chan_sip.c:27868 handle_request_subscribe: Received SIP subscribe for peer without mailbox: 2001

  == Using SIP RTP CoS mark 5

    -- Executing [2002@lan:1] Dial("SIP/2001-00000008", "SIP/2002,30") in new stack

  == Using SIP RTP CoS mark 5

    -- Called SIP/2002

    -- SIP/2002-00000009 is ringing

# 아래는 RTP 흐름을 나타냅니다.

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 192.168.100.37:4000

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 192.168.100.37:4000

    -- SIP/2002-00000009 answered SIP/2001-00000008

    -- Locally bridging SIP/2001-00000008 and SIP/2002-00000009

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 192.168.100.37:4000

       > 0xb8281570 -- Probation passed - setting RTP source address to 110.70.54.124:37151

       > 0xb8281570 -- Probation passed - setting RTP source address to 110.70.54.124:37151

       > 0xb8281570 -- Probation passed - setting RTP source address to 110.70.54.124:37151

       > 0xb8281570 -- Probation passed - setting RTP source address to 110.70.54.124:37151

  == Spawn extension (lan, 2002, 1) exited non-zero on 'SIP/2001-00000008'

  == Using SIP RTP CoS mark 5

    -- Executing [2001@lan:1] Dial("SIP/2002-0000000a", "SIP/2001,30") in new stack

  == Using SIP RTP CoS mark 5

    -- Called SIP/2001

    -- SIP/2001-0000000b is ringing

    -- SIP/2001-0000000b is ringing

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 110.70.54.124:63990

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 110.70.54.124:63990

    -- SIP/2001-0000000b answered SIP/2002-0000000a

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 110.70.54.124:63990

       > 0xb620b2c8 -- Probation passed - setting RTP source address to 110.70.54.124:63990

       > 0xb8267558 -- Probation passed - setting RTP source address to 192.168.100.37:4002

       > 0xb8267558 -- Probation passed - setting RTP source address to 192.168.100.37:4002

  == Spawn extension (lan, 2001, 1) exited non-zero on 'SIP/2002-0000000a'

u5pvr-debian*CLI>


다음으로 다자간 통화를 해보도록 하겠습니다. 


일단 설정 -> 통화옵션으로 이동하여 멀티콜 설정을 켜 줍니다.



그리고 2002 번에 전화를 겁니다.


다음으로 아래쪽에 + 버튼을 통해 2003 번으로 통화를 겁니다.




결론적으로는 3명과 동시에 통화가 되고 화면상으로는 아래와 같이 뜹니다.



추가적으로 PC 클라이언트의 경우 X-lite 프로그램을 사용합니다.


http://www.counterpath.com/x-lite/


소프트폰 -> 계정설정으로 이동하여 아래와 비슷하게 입력해 주시면 됩니다.





감사합니다.



http://cafe.naver.com/mk802/20296

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
TAG U5PVR



갤S8도 G6도…USB-C 커넥터 시대 활짝



데이터 송수신·충전·화면 출력…케이블 하나로

(지디넷코리아=이은정 기자)전자기기용 커넥터로 USB 타입C(USB-C)가 대세로 자리잡고 있다. 편리하면서도 속도가 빠르고 데이터 전송량도 많기 때문이다. 최근 출시된 갤럭시S8과 G6 등이 이를 채택했고 스마트폰 뿐만 아니라 태블릿과 TV, 심지어 전기차에도 적용되는 추세다.

USB는 컴퓨터 등 정보기기에 주변장치를 연결하기 위한 직렬 버스 규격의 하나다.

USB 규격은 USB 1.0/1.1, USB 2.0(High Speed), USB 3.0(SuperSpeed), USB 3.1(SuperSpeed+)로 분류되며 데이터 전송 속도에 크게 차이가 있다.

1996~1998년에 처음 나온 USB 1.0/1.1은 전송 속도가 최대 12Mbps(1초당 1백만 비트를 보낼 수 있는 전송속도)에 불과했다. 2000년에는 최대 480Mbps까지 지원하는 USB 2.0이 발표됐다. 이후 2008년 데이터 전송 속도가 최대 5Gbps까지 빨라진 USB 3.0이 나왔으며 2013년 최신 규격인 USB 3.1 버전이 발표됐다.

삼성전자 '갤럭시S8'에 USB-C 규격이 탑재됐다.(사진=씨넷)

USB 타입C, 뭐가 좋은걸까

USB 3.1 단자는 A·B·C형 3가지 형태로 구분된다. A타입은 컴퓨터 등 기기에 주로 사용되며, B타입(마이크로USB)은 스마트폰 등 소형 기기에 적용된다. C타입은 위아래 형태가 같은 리버서블 디자인으로 기기에 꽃을 때 단자 모양을 확인한 뒤 방향에 맞춰야 하는 불편이 사라지며 단자 크기가 전 규격보다 3분의 1 수준으로 작아져 제품 공간 활용성을 높일 수 있다. 2015년에는 USB 시행자 포럼(USB-IF)에서 차세대 표준 규격으로 USB-C를 발표했다. 

최근 각종 프리미엄 기기에 새롭게 탑재되고 있는 USB 3.1 버전 C타입는 최대 10Gbps을 지원해 초당 1.25GB 전송이 가능하다. 전력 송신 능력은 최대 100W로 USB 3.0(10W)보다 10배의 출력량을 구현한다. 데이터 송수신과 충전, 동영상 및 음성 출력을 하나의 케이블로 할 수 있다는 점이 가장 큰 특징이다.

또 높은 전력량을 구현함에 따라 스마트폰 등 소형 기기부터 모니터, TV, 전기차와 같은 중대형 제품의 출력도 가능해진다. 하지만 USB 3.1 버전의 C타입이 아닌 A·B타입 단자를 사용하거나 USB 3.1 하위 버전의 C타입 단자를 사용하면 데이터 전송 속도 등 성능은 USB 3.1 C 단자 대비 떨어지게 된다.

가장 처음으로 USB-C 규격을 적용한 제품은 맥북이다. 애플의 신형 맥북 프로 제품에는 USB-C 포트 4개만이 적용됐다. 각 단자에 맞는 어댑터가 필요하지만 이 단자 하나로 전원, USB, 디스플레이 출력 등 다양한 용도를 사용할 수 있다. 애플은 최근 기존 맥북에 사용됐던 맥세이프 단자와 호환가능한 맥북 맥세이프 USB-C 어댑터 관련 특허를 출원하기도 했다.

인텔도 2015년 기존에 채택했던 썬더볼트3을 USB-C와 통합할 것을 공개했다. 썬더볼트는 케이블 하나로 NAS(네트워크 저장장치) 등 저장장치는 물론 디스플레이 장치까지 연결할 수 있고 USB 3.0(5Gbps)보다 두 배 높은 10Gbps로 데이터를 전송할 수 있어 관심을 모았다. 하지만 인텔의 독자 규격인 데다 가격도 비쌌다. USB-C와 통합된 썬더볼트3는 전작 대비 전송 속도가 두 배인 40Gbps로 올라갔다.

라이트닝과 USB-C 커넥터.(사진=씨넷)

■스마트폰부터 중대형 기기까지…데이터 전송량↑

스마트폰의 경우 구글 넥서스 시리즈 제품에 USB-C 커넥터가 처음으로 탑재됐다. 국내에서는 LG전자가 지난해 처음으로 ‘G5’에 이어 지난 2월 공개한 ‘G6’에도 USB-C 커넥터를 적용했다. 삼성전자도 지금은 단종된 ‘갤럭시노트7’에 처음 적용했으며, 지난달 29일 공개한 ‘갤럭시S8’에도 C단자를 채택, USB 3.1을 지원해 데이터 전송 속도가 최대 10Gbps를 지원한다.

G6는 USB-C 2.0 버전을 지원하며 USB 3.1버전과 호환 가능하다. G6 구매 시 제품 박스에 기본으로 들어있는 USB-C 2.0 포트를 사용하면 전송속도는 480Mbps다. 갤럭시S8 시리즈는 USB-C 3.1 Gen1(USB 3.0)을 지원해 데이터 전송속도는 5Gbps다. 두 제품 모두 필요에 따라 USB-C 3.1(Gen2) 케이블로 교체시 최대 10Mbps까지 구현한다. 단 기기 내부 설계에 따라 차이가 있을 것으로 보인다. 아이폰8의 USB-C 탑재 여부에 대해서는 의견이 엇갈리고 있다.

중국 스마트폰 시장에서도 USB-C 채택 비중이 확대되고 있다. 지난해 11월을 기준으로 중국 스마트폰 탑20 모델 중 USB-C를 탑재한 기기는 전체의 25%에 달한다. 화웨이의 플래그십 모델 'P10'과 'P9', 메이주 '프로6', 샤오미 모델, 진리(金立)S8 등 제품이다.

갤럭시S8과 함께 공개되며 주목을 받았던 ‘덱스(DeX)’ 역시 USB-C 단자부터 지원된다. 덱스는 일종의 도킹 스테이션으로 갤럭시S8을 제품에 꽂고 모니터와 연결하면 스마트폰이 데스크톱 환경으로 바뀌어 화면에 뜬다. 덱스는 최대 6GB RAM을 지원, PC급 고성능 UX를 구현한다. 삼성전자 ‘올웨이즈9’ 노트북도 USB-C포트를 탑재해 높아진 데이터 전압에도 구동성을 높이고 어댑터 없이 보조배터리팩을 통해 충전이 가능하다.

애플은 USB-C 디지털 AV 멀티포트 어댑터를 출시했다. 이 제품을 사용하면 맥북이나 맥북 프로 화면을 HDMI 케이블을 통해 TV로 미러링(스마트폰의 화면을 그대로 좀 더 큰 화면으로 전송하는 기능)해 고화질 영상을 시청할 수 있다. 프로젝터 등 기기에도 활용 가능하다.

업계에서는 USB-C가 중소형 기기뿐 아니라 대형 제품인 전기자동차 시장에서도 수요가 확대될 것으로 보고 있다. 전기차 내 탑재되는 통신칩부터 점차 높아지는 스펙과 다양한 성능을 구현하게 될 음향 기기, 내비게이션, 카메라 등 애플리케이션을 위해 USB-C 단자를 적용할 것이라는 의견이다.

업계 관계자는 "전기자동차 내부에는 통신칩이 사용되는 등 늘어나는 데이터 전송량이나 전력 공급량에 있어 케이블 등이 바뀌지 않을 수 없을 것"이라며 "전력 손실이 줄어들고 발열을 완화할 수 있어 전력품질을 개선하고 안전성을 높일 수 있을 것은 장점이지만 가격, 설계 등 문제로 어느 정도 시간은 필요하다고 본다"고 말했다.

USB-C 포트 HDMI 케이블을 통해 미러링 등 기능으로 고화질 영상을 시청할 수 있다.(사진=씨넷)

이은정 기자(lejj@zdnet.co.kr)


http://news.naver.com/main/read.nhn?mode=LSD&mid=sec&oid=092&aid=0002114682&sid1=001






Naver 쇼핑몰 : LG USB C 타입 고속 충전케이블







[USB C Type] LG G5 순정 악세서리 분석 test 1
http://cafe.naver.com/mk802/18214


[USB C Type] LG G5 번들 USB C 케이블 분석 test 1 (외관)
http://cafe.naver.com/mk802/18284


[USB C Type] LG G5 번들 USB C 케이블 분석 test 2 (내부 케이블)
http://cafe.naver.com/mk802/18335


[USB C Type] LG G5 번들 USB C 케이블 분석 test 3 - CHeckR (앱)을 통한 신뢰성 체크
http://cafe.naver.com/mk802/18436



[USB C Type] Samsung Galaxy Note 7 순정 USB C 케이블 분석 test 1 (LG USB C 케이블 비교 추가) (작성중 - 사진 압박 주의)

http://cafe.naver.com/mk802/18456


[USB C Type] 아트뮤(ARTMU) USB C타입 LG G5, 넥서스 5X 충전 케이블 (LG G5, 삼성 갤럭시 노트7 USB C 케이블과 비교)  http://muritzy.tistory.com/1217






자세한 사항은 "EddyLab - UHD 미니PC포럼"에서 자료를 참조 하시기 바랍니다.

http://www.eddylab.co.kr  /  http://cafe.naver.com/mk802

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License



안녕하세요. 이번에는 U5PVR 에서 WebDAV 공유를 만드는 방법에 대해서 알아보겠습니다.


기본적으로 apache2 웹서버 패키지로 구동이 됩니다.


그럼 시작하겠습니다.


1. apache2 설치 및 설정하기


먼저 apache2 패키지를 설치합니다.


root@u5pvr-debian:~# apt-get install apache2

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following extra packages will be installed:

  apache2-bin apache2-data apache2-utils libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap

  liblua5.1-0 ssl-cert

Suggested packages:

  www-browser apache2-doc apache2-suexec-pristine apache2-suexec-custom openssl-blacklist

The following NEW packages will be installed:

  apache2 apache2-bin apache2-data apache2-utils libapr1 libaprutil1 libaprutil1-dbd-sqlite3

  libaprutil1-ldap liblua5.1-0 ssl-cert

0 upgraded, 10 newly installed, 0 to remove and 0 not upgraded.

Need to get 1785 kB of archives.

After this operation, 4778 kB of additional disk space will be used.

Do you want to continue? [Y/n]


다음 설치가 완료되고 나면 webdav 관련 모듈을 활성화 해 줍니다.


root@u5pvr-debian:~# a2enmod dav dav_fs auth_digest

Enabling module dav.

Considering dependency dav for dav_fs:

Module dav already enabled

Enabling module dav_fs.

Considering dependency authn_core for auth_digest:

Module authn_core already enabled

Enabling module auth_digest.

To activate the new configuration, you need to run:

  service apache2 restart


여기서 다이제스트 인증을 하는 이유는 윈도우와 호환성을 높이기 위함입니다.


윈도우 8 이전까지는 레지스트리 수정을 해야 했으나 윈도우 8.1 이후 부터는 할 필요가 없습니다.


다음으로 기본적으로 활성화 되어 있는 000-default.conf 가상호스트를 disable 합니다.


(차후에 웹서버 기능까지 사용하실 분들은 아마도 고수분들이라 생각하고 코멘트를 남기지 않겠습니다 ㅎㅎ 본 가이드는 WebDAV 만 활용할 목적으로 작성이 되었습니다.)


root@u5pvr-debian:~# a2dissite 000-default

Site 000-default disabled.

To activate the new configuration, you need to run:

  service apache2 reload


webdav 전용으로 가상호스트 설정파일을 만듭니다.


아래의 설정파일은 /mnt 를 webdav 루트로 하는 설정파일입니다.


root@u5pvr-debian:~# nano /etc/apache2/sites-available/webdav.conf


<VirtualHost *:80>
    DocumentRoot /mnt
    <Directory /mnt>
        Options Indexes MultiViews FollowSymLinks
        AllowOverride none
        Require all granted
    </Directory>
    <Location />
        DAV On
        AuthType Digest
        AuthName "WebDAV"    <-- realm 값입니다. 
        AuthDigestDomain /
        AuthDigestProvider file
        AuthUserFile /etc/apache2/passwd.dav    <-- 패스워드 파일 위치
        Require valid-user
    </Location>
</VirtualHost>


설정을 완료 하였으면 가상호스트 파일을 활성화 해 줍니다.


root@u5pvr-debian:~# a2ensite webdav.conf

Enabling site webdav.

To activate the new configuration, you need to run:

  service apache2 reload


계정에 대해서 설정을 진행합니다.


djj9405 라는 계정을 추가할 예정입니다. 패스워드를 두번 입력합니다.


root@u5pvr-debian:~# htdigest -c /etc/apache2/passwd.dav WebDAV djj9405

# -c 패스워드파일위치 realm값 추가계정이름

Adding password for djj9405 in realm WebDAV.

New password:

Re-type new password:


설정이 완료 되었음으로 웹서버를 재시작 합니다.


아래처럼 에러가 뜨기는 하나 문제는 없습니다.


에러가 거슬리시는 분은 /etc/apache2/apache2.conf 에 ServerName localhost 라고 한 줄 추가해 주시면 됩니다.


root@u5pvr-debian:~# service apache2 restart

[....] Restarting web server: apache2AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

. ok

root@u5pvr-debian:~#


추가적으로 안드로이드 권한과 맞춰야 함으로 www-data 계정을 aid_media_rw 와 aid_sdcard_r 에 추가해 줍니다.


root@u5pvr-debian:~# adduser www-data aid_sdcard_r

Adding user `www-data' to group `aid_sdcard_r' ...

Adding user www-data to group aid_sdcard_r

Done.

root@u5pvr-debian:~# adduser www-data aid_media_rw

Adding user `www-data' to group `aid_media_rw' ...

Adding user www-data to group aid_media_rw

Done.



2. WebDAV 에 연결하기


먼저 기초적으로 작동을 하는지 알아보기 위해서 브라우저로 접근을 시도해 봅니다.



정상적으로 작동합니다.





다음은 파일 탐색기에 연결해 보도록 하겠습니다.


내컴퓨터 -> 오른쪽 -> 네트워크 위치 추가 -> 아이피 입력 -> 설정한 아이디 비밀번호 입력



정상적으로 연결이 되었습니다.



파일 구조가 잘 뜹니다만, 무슨 이유인지는 모르겠으나 심링크로 된 sdcard 나 USBDevice 내부의 파일이 보이지 않습니다. 크롬으로 접속하였을 때에는 정상적으로 보였는데 여기서는 보이지 않네요.


(덧글로 팁좀 부탁드립니다!!)



한편 파일탐색기로는 파일을 옮기려고 하면 아래의 에러가 발생하기 때문에 레지스트리 값을 수정해야하는 문제를 안고 있습니다.


파일 용량을 수정한다한들 더블클릭으로 재생이 되지 않습니다.



따라서 이번에는 넷드라이브를 이용하여 붙여 보도록 하겠습니다.


넷드라이브 구버전을 구하셔서 설치를 하시고, 아래와 같이 설정해 주시면 됩니다.



한편, 한글 파일이 깨지는 문제가 발생함으로 아래의 Advanced 를 눌러 언어셋을 UTF-8 로 맞춥니다.



연결을 하게 되면 아래와 같이 로컬디스크 처럼 뜹니다.




파일이 정상적으로 보이고 아래의 걸스데이 뮤비를 하나 재생해 보도록 하겠습니다.



큰 버퍼링 없이 잘 재생이 됩니다.



추가적으로 안드로이드 ES 파일탐색기에서 연결을 시도해 보겠습니다.


(아이폰의 경우에는 WebDAV 를 지원하는 플레이어를 사용하시면 됩니다.)







테스트로 영상 파일 하나 재생 해 보았습니다.


문제 없이 재생이 됩니다 ㅎㅎ




감사합니다. ㅎㅎ


http://cafe.naver.com/mk802/20251


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License


 

티스토리 툴바

Google+