'FQDN'에 해당되는 글 2건
- 2020.04.21 Hardware | ESP32 NTP Server 이용한 시간 맞추기
- 2018.03.25 Hardware | Cross cable 로 MediaWiki 서버 연결해 보기
지금까지 ESP32 에 관한 글은 아래를 참고해 주세요.
* Hardware | ESP32 Deep sleep 알아보기
- https://chocoball.tistory.com/entry/Hardware-ESP32-Deep-sleep
* Hardware | ESP32 Cryptographic HW 가속 확인해 보기
- https://chocoball.tistory.com/entry/Hardware-ESP32-Cryptographic-HW-acceleration
* Hardware | EPS32 PWM 기능 확인해 보기
- https://chocoball.tistory.com/entry/Hardware-EPS32-PWM
* Hardware | ESP32 의 internal sensor 확인해 보기
- https://chocoball.tistory.com/entry/Hardware-ESP32-internal-sensors
* Hardware | ESP32 의 Dual core 확인해 보기
- https://chocoball.tistory.com/entry/Hardware-ESP32-Dual-core
* Hardware | ESP32 스펙 확인해 보기
- https://chocoball.tistory.com/entry/Hardware-ESP32-spec-check
* Hardware | ESP32 간단 사용기
- https://chocoball.tistory.com/entry/Hardware-simple-review-ESP32
이 글을 마지막으로 ESP32 에 대해 대략적인 내용은 얼추 확인해 본 것 같습니다.
이후에는 WiFi 이용한 활용시에는 가능한 ESP32 를 사용해 보려 합니다.
1. NTP
본 포스트는 아래 글을 참조 하였습니다.
* Getting Date & Time From NTP Server With ESP32
- https://lastminuteengineers.com/esp32-ntp-server-date-time-tutorial/
동일한 시간 기준으로 동작해야 하는 서비스를 위해, 인터넷에서는 NTP 라는 서비스가 지원되고 있습니다.
* Network Time Protocol
- https://en.wikipedia.org/wiki/Network_Time_Protocol
이를태면, 정확한 시간 정보를 가져올 수 있는 서버들이 존재한다는 것이죠.
2. WiFi
"인터넷" 을 통해 시간 정보를 가져와야 하므로, WiFi 등의 인터넷 연결이 필수 입니다.
ESP32 는, WiFi 연결을 위해 "WiFi.h" 라이브러리를 지원합니다. 이를 통해 쉽게 WiFi 연결을 실현해 줍니다.
지금까지 Arduino + ESP8266 에서는 AT command 를 이용하여, 하나하나 명령어를 정의해야 했었는데, 그럴 수고를 덜어줍니다.
const char* ssid = "YOUR_SSID"; const char* password = "YOUR_PASS";
인터넷 접속을 위한 WiFI SSID 및 비번 정의를 하면 끝 입니다. 정말로 이걸로 끝입니다.
3. NTP
#include "WiFi.h" #include "time.h" const char* ssid = "YOUR_SSID"; const char* password = "YOUR_PASS"; const char* ntpServer = "pool.ntp.org"; const long gmtOffset_sec = 3600; const int daylightOffset_sec = 3600; void printLocalTime() { struct tm timeinfo; if(!getLocalTime(&timeinfo)) { Serial.println("Failed to obtain time"); return; } Serial.println(&timeinfo, "%A, %B %d %Y %H:%M:%S"); } void setup() { Serial.begin(115200); // connect to WiFi Serial.printf("Connecting to %s ", ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(" CONNECTED"); // init and get the time configTime(gmtOffset_sec, daylightOffset_sec, ntpServer); printLocalTime(); // disconnect WiFi as it's no longer needed WiFi.disconnect(true); WiFi.mode(WIFI_OFF); } void loop() { delay(1000); printLocalTime(); }
위의 소스를 각 로컬 상황에 맞게 설정해줘야 합니다.
const char* ntpServer = "pool.ntp.org"; const long gmtOffset_sec = 3600; const int daylightOffset_sec = 3600;
우선, NTP 서버는 "pool.ntp.org" 로 정의 합니다. 이 FQDN 을 통해 NTP 서버를 할당 받습니다.
"gmOffset_sec" 는 GMT 기준으로 얼마나 차이나는지를 확인합니다.
한국은 그리니치 천문대 기준 9시간 추가된 시간대인, "GMT+9" 이므로 "3600 * 9 = 32400" 만큼 더해주면 됩니다.
또한, "daylightOffset_sec" 은, 서머타임 적용 지역이면, 한시간인 3600 을 적용하면 됩니다.
우리나라는 서머타임 적용은 80년대에 일시적으로 적용하고, 그 이후 사용되지 않으므로 "0" 으로 정의합니다. (옛날 사람...)
위의 내용을 적용하고 실행하면 다음과 같이 됩니다.
'Hardware' 카테고리의 다른 글
Hardware | ebook 크레마 사운드 액정 수리기 - 6 (3) | 2020.05.10 |
---|---|
Hardware | 샤오미 미밴드 4 한글 패치 (2) | 2020.04.25 |
Hardware | ESP32 Deep sleep 알아보기 (0) | 2020.04.18 |
Hardware | ESP32 Cryptographic HW 가속 확인해 보기 (2) | 2020.04.16 |
Hardware | EPS32 PWM 기능 확인해 보기 (0) | 2020.04.11 |
1. 시작
Raspberry Pi 3 model B를 사용하여 MediaWiki 를 개인 서버로 활용하고 있습니다.
도메인은 아직 구입하지 못했지만, "www.chocoball.com" FQDN 을 치면, Host 파일에서 해당 IP를 할당받은
Raspberry Pi 3 model B 로 접속합니다.
이제 회사에서 보안 문제로 IP를 할당받기 어려워 고민에 빠졌습니다.
2. Crossover cable
크로스 케이블은 중간에 hub 를 거치지 않고, 직접 PC to PC, PC to Server 로 연결할 수 있는 방법입니다.
실제 IP 를 받지 않아도 PC / Laptop 과 직접 연결하여 통신할 수 있습니다.
원리는 Hub 를 통해서 in / out 이 연결 되면, RX/TX 를 교환해 주는데,
Crossove 케이블을 직접 연결하면, Hub 를 통한 것 처럼 되는 원리 입니다.
알리익스프레스에서 cross cable 로 검색해 보니, 다음과 같은 제품이 있네요!
원래는 크로스 케이블 전체를 구입해야 하나,
기존 LAN선 끝부분에 어뎁터처럼 연결하여 크로스 케이블 RX/TX 를 교환해주는 효과를 내는 제품이었습니다.
* RJ45 CAT5 CAT5E Network Ethernet Connector male to female Cable cross Adapter New Free Shipping
기존 Lan 케이블을 사용할 수 있고, 이 어뎁터만 끼우면 Crossover 케이블이 되므로 좋아 보이네요.
아래는 제품 설명입니다.
RJ45 crossover In-line Coupler provides a Male-to-Female feed-through connection.
Enable connecting 2 LAN cables to become an extension.
Compatible with all routers/hubs/network RJ45 connections.
The adapter will allow you to connect 2 PCs or hubs with regular network cables instead of crossover cables
Convert your patch cable into a crossover cable by connecting it to this adapter
Gold plated connectors
Meets draft 11 of the EIA / TIA 586A category and specification
Color : blue. Type : Adapter.
외형입니다.
왠만하면 중국어로 되어 있습니다. 중국어를 이제 공부해야 할것 같습니다.
3. 도착
한 3주만에 도착했습니다. 뽁뽁이로 잘 쌓여서요.
확대한 사진입니다. 제조 마무리는 잘 되어 있는것 같습니다.
조그마한 때도 같이 왔네요.
4. 연결
일반 Lan 케이블 끝에 이번에 구입한 어뎁터를 끼우고, Raspberry Pi 3 model B 의 Wired Lan port 에 접속시킵니다.
Lan 케이블 한쪽 끝은 노트북 Wired Lan port 에 연결합니다.
5. 설정
Raspberry Pi 3 model B 에서도 인터넷을 사용할 수 있도록 공유 설정을 해 줍니다.
* Control Panel > Network 와 Internet > Network 접속
무선 네트웍 아이콘을 오른클릭 하여, 설정 메뉴로 진입합니다.
공유 탭에서 인터넷 접속을 "로컬 네트웍" 접속에 공유하기를 설정해 줍니다.
이제 Windows 7 에서 설정이 완료 되었습니다.
이제 유선랜은 무선랜의 인터넷이 공유됩니다.
6. 유선랜 연결
Raspberry Pi 3 model B 에서 확인해 봅니다
IP를 잘 할당 받았네요..
인터넷 외부와 접속 되는지 ping 으로 확인해 봅니다.
성공입니다~!!!
7. 역으로 접속
이제 Laptop 에서 Raspberry Pi 3 model B 에서 돌아가는 MediaWiki 에 접속하기 위해 IP 를 찾아 봅니다.
이미 위에서 직접 Raspberry Pi 에 consol 연결하여 확인해 보았지만,
그렇지 않을 경우는 이렇게 arp 명령어를 이용하여 찾을 수 있습니다.
Host 파일을 이용하여 직접 접속할 수 있도록 resolver 를 설정해 줍니다.
- C:\Windows\System32\drivers\etc\hosts
짜잔~~~.
이제 직접 접속할 수 있게 되었습니다.
이제 따로 IP 를 할당받지 않고, 명함 크기만한 Raspberry Pi 3 model B 를 직접 가지고 다니면서 활용할 수 있게 되었습니다.
사실, VMware 같은 가상 서버를 만들면 되지만...
8. 번외
손 맛사지기 USB 충전기를 이번에 사용했더니, 다음과 같은 dmesg 메시지가 나오네요.
Under voltage 워닝도 나오고 Raspberry Pi 3 model B 와 Ubuntu Mate 의 페어는 괜찮은것 같습니다.
FIN
Raspberry Pi 시리즈는 Model A 1+ > Model B 1 > B 1+ > B 2 까지,
안전성을 위해서 비싸더라도 아래 제조사의 통 알루미늄 케이스를 구입해서 사용하고 있었습니다.
* Pi Holder (Pi 3 B only) SECURE Case with Heat Dissipation
Model 3 B+ 가 새로 나왔다 하니, 이제 통알루미늄 케이스를 구입해서 쉽게 가지고 다닐수 있게 할까 생각해 봅니다.
'Hardware' 카테고리의 다른 글
Hardware | Raspberry Pi 3 model B 의 RPC 와 UK 생산지 차이를 비교해보자 (0) | 2018.03.29 |
---|---|
Hardware | Fuji Xerox 의 CP116w 토너 교환기 (0) | 2018.03.28 |
Hardware | RadarBox24 신청부터 설치까지 (0) | 2018.03.07 |
Hardware | Arduino 의 AREF pin 에 대해 알아보자 (0) | 2018.03.04 |
Hardware | HC-SR501 PIR motion sensor - 2 (2) | 2018.03.01 |