'프로그램 사용/mosquitto'에 해당되는 글 9건

  1. 2026.07.09 mqtt binary data
  2. 2025.12.27 zigbee CC2531 on ubuntu 실패
  3. 2025.12.27 zigbee 2 MQTT(Z2M) / zigbee home automation(ZHA)
  4. 2025.04.18 mosquitto qos
  5. 2025.02.18 mosquitto for windows 계정추가
  6. 2025.02.18 mosquitto service for windows
  7. 2025.01.07 CC2531 zigbee - mqtt
  8. 2024.05.23 ubuntu MQTT(mosquito)
  9. 2019.05.15 mosquitto - MQTT broker

딱히 포맷을 가리진 않는다고 한다.

그래서 json을 보내던, plain text를 보내던 바이너리를 보내던

바이너리를 base64encode 하던 상관없나 보다.

[링크 : https://www.emqx.com/en/blog/how-to-process-json-hex-and-binary-data-in-mqtt]

 

귀찮으면(!) 파일을 그냥 던져도 되나보다.

$ mosquitto_pub --help
mosquitto_pub is a simple mqtt client that will publish a message on a single topic and exit.
mosquitto_pub version 2.0.11 running on libmosquitto 2.0.11.

Usage: mosquitto_pub {[-h host] [--unix path] [-p port] [-u username] [-P password] -t topic | -L URL}
                     {-f file | -l | -n | -m message}
                     [-c] [-k keepalive] [-q qos] [-r] [--repeat N] [--repeat-delay time] [-x session-expiry]
                     [-A bind_address] [--nodelay]
                     [-i id] [-I id_prefix]
                     [-d] [--quiet]
                     [-M max_inflight]
                     [-u username [-P password]]
                     [--will-topic [--will-payload payload] [--will-qos qos] [--will-retain]]
                     [{--cafile file | --capath dir} [--cert file] [--key file]
                       [--ciphers ciphers] [--insecure]
                       [--tls-alpn protocol]
                       [--tls-engine engine] [--keyform keyform] [--tls-engine-kpass-sha1]]
                       [--tls-use-os-certs]
                     [--psk hex-key --psk-identity identity [--ciphers ciphers]]
                     [--proxy socks-url]
                     [--property command identifier value]
                     [-D command identifier value]
       mosquitto_pub --help

 -A : bind the outgoing socket to this host/ip address. Use to control which interface
      the client communicates over.
 -d : enable debug messages.
 -c : disable clean session/enable persistent client mode
      When this argument is used, the broker will be instructed not to clean existing sessions
      for the same client id when the client connects, and sessions will never expire when the
      client disconnects. MQTT v5 clients can change their session expiry interval with the -x
      argument.
 -D : Define MQTT v5 properties. See the documentation for more details.
 -f : send the contents of a file as the message.
 -h : mqtt host to connect to. Defaults to localhost.
 -i : id to use for this client. Defaults to mosquitto_pub_ appended with the process id.
 -I : define the client id as id_prefix appended with the process id. Useful for when the
      broker is using the clientid_prefixes option.
 -k : keep alive in seconds for this client. Defaults to 60.
 -L : specify user, password, hostname, port and topic as a URL in the form:
      mqtt(s)://[username[:password]@]host[:port]/topic
 -l : read messages from stdin, sending a separate message for each line.
 -m : message payload to send.
 -M : the maximum inflight messages for QoS 1/2..
 -n : send a null (zero length) message.
 -p : network port to connect to. Defaults to 1883 for plain MQTT and 8883 for MQTT over TLS.
 -P : provide a password
 -q : quality of service level to use for all messages. Defaults to 0.
 -r : message should be retained.
 -s : read message from stdin, sending the entire input as a message.
 -t : mqtt topic to publish to.
 -u : provide a username
 -V : specify the version of the MQTT protocol to use when connecting.
      Can be mqttv5, mqttv311 or mqttv31. Defaults to mqttv311.
 -x : Set the session-expiry-interval property on the CONNECT packet. Applies to MQTT v5
      clients only. Set to 0-4294967294 to specify the session will expire in that many
      seconds after the client disconnects, or use -1, 4294967295, or ∞ for a session
      that does not expire. Defaults to -1 if -c is also given, or 0 if -c not given.
 --help : display this message.
 --nodelay : disable Nagle's algorithm, to reduce socket sending latency at the possible
             expense of more packets being sent.
 --quiet : don't print error messages.
 --repeat : if publish mode is -f, -m, or -s, then repeat the publish N times.
 --repeat-delay : if using --repeat, wait time seconds between publishes. Defaults to 0.
 --unix : connect to a broker through a unix domain socket instead of a TCP socket,
          e.g. /tmp/mosquitto.sock
 --will-payload : payload for the client Will, which is sent by the broker in case of
                  unexpected disconnection. If not given and will-topic is set, a zero
                  length message will be sent.
 --will-qos : QoS level for the client Will.
 --will-retain : if given, make the client Will retained.
 --will-topic : the topic on which to publish the client Will.
 --cafile : path to a file containing trusted CA certificates to enable encrypted
            communication.
 --capath : path to a directory containing trusted CA certificates to enable encrypted
            communication.
 --cert : client certificate for authentication, if required by server.
 --key : client private key for authentication, if required by server.
 --keyform : keyfile type, can be either "pem" or "engine".
 --ciphers : openssl compatible list of TLS ciphers to support.
 --tls-version : TLS protocol version, can be one of tlsv1.3 tlsv1.2 or tlsv1.1.
                 Defaults to tlsv1.2 if available.
 --insecure : do not check that the server certificate hostname matches the remote
              hostname. Using this option means that you cannot be sure that the
              remote host is the server you wish to connect to and so is insecure.
              Do not use this option in a production environment.
 --tls-engine : If set, enables the use of a TLS engine device.
 --tls-engine-kpass-sha1 : SHA1 of the key password to be used with the selected SSL engine.
 --tls-use-os-certs : Load and trust OS provided CA certificates.
 --psk : pre-shared-key in hexadecimal (no leading 0x) to enable TLS-PSK mode.
 --psk-identity : client identity string for TLS-PSK mode.
 --proxy : SOCKS5 proxy URL of the form:
           socks5h://[username[:password]@]hostname[:port]
           Only "none" and "username" authentication is supported.

See https://mosquitto.org/ for more information.

'프로그램 사용 > mosquitto' 카테고리의 다른 글

zigbee CC2531 on ubuntu 실패  (0) 2025.12.27
zigbee 2 MQTT(Z2M) / zigbee home automation(ZHA)  (0) 2025.12.27
mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
Posted by 구차니

음.. 그러고 보니 zigbee 단말도 없긴하네?

 

[   40.925908] usb 2-1.2: new full-speed USB device number 5 using ehci-pci
[   41.009340] usb 2-1.2: New USB device found, idVendor=0451, idProduct=16a8, bcdDevice= 0.09
[   41.009366] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   41.009375] usb 2-1.2: Product: TI CC2531 USB CDC
[   41.009381] usb 2-1.2: Manufacturer: Texas Instruments
[   41.009386] usb 2-1.2: SerialNumber: __0X00124B0018E27CF7
[   41.010714] cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device
[   64.137191] warning: `ThreadPoolForeg' uses wireless extensions which will stop working for Wi-Fi 7 hardware; use nl80211

[링크 : https://github.com/zigbee2mqtt/hassio-zigbee2mqtt]

[링크 : https://m.blog.naver.com/ohminy11/222520636013]

[링크 : https://cafe.naver.com/koreassistant/3962]

 

$ ls -al /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E27CF7-if00 
lrwxrwxrwx 1 root root 13 12월 27 18:33 /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E27CF7-if00 -> ../../ttyACM0

 

version: 4
mqtt:
    base_topic: zigbee2mqtt
    server: mqtt://localhost:1833
serial:
    port: /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E27CF7-if00
    adapter: zstack
advanced:
    channel: 11
    network_key: GENERATE
    pan_id: GENERATE
    ext_pan_id: GENERATE
frontend:
    enabled: true
homeassistant:
    enabled: true

[링크 : https://www.zigbee2mqtt.io/guide/configuration/]

 

[링크 : https://github.com/Koenkk/zigbee2mqtt]

[링크 : https://www.zigbee2mqtt.io/guide/installation/01_linux.html] 리눅스 직접설치 비추

 

링크에서 있는거랑은 시리얼이 달라서 일단은 내거랑 맞게 수정

sudo docker run \
   --name zigbee2mqtt \
   --restart=unless-stopped \
   --device=/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E27CF7-if00:/dev/ttyACM0 \
   -p 8080:8080 \
   -v $(pwd)/data:/app/data \
   -v /run/udev:/run/udev:ro \
   -e TZ=Asia/Seoul \
   ghcr.io/koenkk/zigbee2mqtt

[링크 : https://www.zigbee2mqtt.io/guide/installation/02_docker.html] docker 추천

[링크 : https://github.com/koenkk/zigbee2mqtt/pkgs/container/zigbee2mqtt] 다른 아키텍쳐 일 경우

 

실행시 메시지

Unable to find image 'ghcr.io/koenkk/zigbee2mqtt:latest' locally
latest: Pulling from koenkk/zigbee2mqtt
2d35ebdb57d9: Pull complete 
22359d97d4f5: Pull complete 
04d924b772af: Pull complete 
93836646b368: Pull complete 
33e1af1a4e45: Pull complete 
3fa2c3ee76eb: Pull complete 
7b447ead2b45: Pull complete 
ce83bad0f202: Pull complete 
508a0def7d14: Pull complete 
108de8ed3423: Pull complete 
Digest: sha256:163e7351430a95d550d5b1bb958527edc1eff115eb013ca627f3545a192e853f
Status: Downloaded newer image for ghcr.io/koenkk/zigbee2mqtt:latest
Using '/app/data' as data directory
Starting Zigbee2MQTT without watchdog.
Onboarding page is available at http://0.0.0.0:8080/

 

Onboarding page is available at http://0.0.0.0:8080/
[2025-12-27 20:13:39] info:  z2m: Logging to console, file (filename: log.log)
[2025-12-27 20:13:39] info:  z2m: Starting Zigbee2MQTT version 2.7.1 (commit #6d30fa156cf208189edbbd7db8422a6fc657fb9e
)
[2025-12-27 20:13:39] info:  z2m: Starting zigbee-herdsman (7.0.4)
[2025-12-27 20:13:39] info:  zh:adapter:discovery: Matched adapter: {"path":"/dev/ttyACM0","manufacturer":"Texas Instruments","serialNumber":"__0X00124B0018E27CF7","pnpId":"usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018E27CF7-if00","vendorId":"0451","productId":"16a8"} => zstack: 4
[2025-12-27 20:13:39] info:  zh:zstack:znp: Opening SerialPort with {"path":"/dev/ttyACM0","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-12-27 20:13:39] info:  zh:zstack:znp: Serialport opened
[2025-12-27 20:13:46] info:  zh:controller: Wrote coordinator backup to '/app/data/coordinator_backup.json'
[2025-12-27 20:13:46] info:  z2m: zigbee-herdsman started (restored)
[2025-12-27 20:13:46] info:  z2m: Coordinator firmware version: '{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20190608,"transportrev":2},"type":"ZStack12"}'
[2025-12-27 20:13:46] info:  z2m: Currently 0 devices are joined.
[2025-12-27 20:13:46] info:  z2m: Connecting to MQTT server at mqtt://localhost:1883
[2025-12-27 20:13:46] error:  z2m: MQTT failed to connect, exiting... ()
[2025-12-27 20:13:46] info:  z2m: Stopping zigbee-herdsman...
[2025-12-27 20:13:47] info:  zh:controller: Wrote coordinator backup to '/app/data/coordinator_backup.json'
[2025-12-27 20:13:47] info:  zh:zstack:znp: closing
[2025-12-27 20:13:47] info:  zh:zstack:znp: Port closed
[2025-12-27 20:13:47] info:  z2m: Stopped zigbee-herdsman

 

'프로그램 사용 > mosquitto' 카테고리의 다른 글

mqtt binary data  (0) 2026.07.09
zigbee 2 MQTT(Z2M) / zigbee home automation(ZHA)  (0) 2025.12.27
mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
Posted by 구차니

예전에 구매해놨던 CC2531을 어떻게 써먹나 고민하면서 다시 찾다가 이상한 용어 발견

 

현재는 zigbee2MQTT(Z2M) 펌웨어로 구워져 있는 상태일것 같은데, 이걸 구으려면 라즈베리가 필요한가보네?

[링크 : https://psychoria.tistory.com/m/692]

 

mDNS 설정시 115200 bps 라는데.. putty로 115k 해서는 먼가 되는게 없긴하다.

[링크 : https://www.zigbee2mqtt.io/guide/configuration/adapter-settings.html]

 

 

[링크 : https://blog.naver.com/fromzip/222009276457]

[링크 : https://wendysm.tistory.com/98]

[링크 : https://m.blog.naver.com/ohminy11/222520636013]

 

 

'프로그램 사용 > mosquitto' 카테고리의 다른 글

mqtt binary data  (0) 2026.07.09
zigbee CC2531 on ubuntu 실패  (0) 2025.12.27
mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
Posted by 구차니

ROS 보다보니 QoS 이야기가 나와서 조사

그런데 정작 찾아봐도 적용방법이 잘 안보인다.

conf 파일에서는 max_qos와 topic patern에 추가하는 정도?

 

topic pattern [[[ out | in | both ] qos-level] local-prefix remote-prefix]

max_qos value
Limit the QoS value allowed for clients connecting to this listener. Defaults to 2, which means any QoS can be used. Set to 0 or 1 to limit to those QoS values. This makes use of an MQTT v5 feature to notify clients of the limitation. MQTT v3.1.1 clients will not be aware of the limitation. Clients publishing to this listener with a too-high QoS will be disconnected.

Not reloaded on reload signal.

[링크 : https://mosquitto.org/man/mosquitto-conf-5.html]

 

QoS는 0,1,2가 존재한다. 그런데 기본값이 멀까..?

Quality of Service
MQTT defines three levels of Quality of Service (QoS). The QoS defines how hard the broker/client will try to ensure that a message is received. Messages may be sent at any QoS level, and clients may attempt to subscribe to topics at any QoS level. This means that the client chooses the maximum QoS it will receive. For example, if a message is published at QoS 2 and a client is subscribed with QoS 0, the message will be delivered to that client with QoS 0. If a second client is also subscribed to the same topic, but with QoS 2, then it will receive the same message but with QoS 2. For a second example, if a client is subscribed with QoS 2 and a message is published on QoS 0, the client will receive it on QoS 0.

Higher levels of QoS are more reliable, but involve higher latency and have higher bandwidth requirements.

0: The broker/client will deliver the message once, with no confirmation.
1: The broker/client will deliver the message at least once, with confirmation required.
2: The broker/client will deliver the message exactly once by using a four step handshake.

[링크 : https://mosquitto.org/man/mqtt-7.html]

 

초당 32000 메시지라.. 느린거 걱정안해도 될 것 같기도 하고?

[링크 : https://hel-p.tistory.com/18]

 

[링크 : https://dalkomit.tistory.com/111]

[링크 : https://www.ibm.com/docs/ko/ibm-mq/9.2.x?topic=concepts-qualities-service-provided-by-mqtt-client]

'프로그램 사용 > mosquitto' 카테고리의 다른 글

zigbee CC2531 on ubuntu 실패  (0) 2025.12.27
zigbee 2 MQTT(Z2M) / zigbee home automation(ZHA)  (0) 2025.12.27
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
CC2531 zigbee - mqtt  (0) 2025.01.07
Posted by 구차니

결국은(?) password_file을 지정해서 mosquitto_passwd 명령을 통해 계정을 추가해주면 끝 인듯

 

1. password.txt 이름으로 비어있는 파일을 생성하여 Mosquitto가 설치된 폴더에 저장
2. 계정 추가
C:\mosquitto>mosquitto_passwd -b password.txt admin password

3. mosquitto.conf 파일 수정
allow_anonymous false
password_file C:\Program Files\mosquitto\password.txt

[링크 : https://hays99.tistory.com/189]

[링크 : https://mosquitto.org/man/mosquitto_passwd-1.html]

 

+

2025.02.21

"Program Files" 때문에 공백이 있어서 "로 묶어 줘야 할 줄 알았는데, 해주면 안되도록 구현이 되어있나 보다.

C:\Program Files\mosquitto>mosquitto -c mosquitto.conf -v
1740101165: mosquitto version 2.0.20 starting
1740101165: Config loaded from mosquitto.conf.
1740101165: Error: Unable to open pwfile ""C:\Program Files\mosquitto\password.txt"".
1740101165: Error opening password file ""C:\Program Files\mosquitto\password.txt"".

 

'프로그램 사용 > mosquitto' 카테고리의 다른 글

zigbee 2 MQTT(Z2M) / zigbee home automation(ZHA)  (0) 2025.12.27
mosquitto qos  (0) 2025.04.18
mosquitto service for windows  (0) 2025.02.18
CC2531 zigbee - mqtt  (0) 2025.01.07
ubuntu MQTT(mosquito)  (0) 2024.05.23
Posted by 구차니

공식 다운로드는 아래인데

[링크 : https://mosquitto.org/download/]

 

받아도 방화벽 설정은 하나도 안되고 내부에서만 허용되는 설정으로 설치가 된다.

그러니 외부 접속이 필요하면 아래 내용을 참고하여 인바운드 1883/tcp를 허용해주어야 한다.

[링크 : https://velog.io/@foxiq/MQTT-사용]

 

윈도우 64bit로 설치했을 경우 C:\Program Files\mosquitto\mosquitto.conf 에 설정 파일이 저장된다.

굳이 listener 1883 0.0.0.0 으로 해주진 않아도 외부 접속을 허용하게 되는 것으로 보인다.

# =================================================================
# Listeners
# =================================================================

# Listen on a port/ip address combination. By using this variable
# multiple times, mosquitto can listen on more than one port. If
# this variable is used and neither bind_address nor port given,
# then the default listener will not be started.
# The port number to listen on must be given. Optionally, an ip
# address or host name may be supplied as a second argument. In
# this case, mosquitto will attempt to bind the listener to that
# address and so restrict access to the associated network and
# interface. By default, mosquitto will listen on all interfaces.
# Note that for a websockets listener it is not possible to bind to a host
# name.
#
# On systems that support Unix Domain Sockets, it is also possible
# to create a # Unix socket rather than opening a TCP socket. In
# this case, the port number should be set to 0 and a unix socket
# path must be provided, e.g.
# listener 0 /tmp/mosquitto.sock
#
# listener port-number [ip address/host name/unix socket path]
#listener
listener 1883
allow_anonymous true

 

+

2025.02.21

포트를 바꿀 경우 -p 로 바꾸어 주고

다른 서버일 경우 -h ip를 추가해주면 된다.

C:\Program Files\mosquitto>mosquitto_sub -p 27839 -t topic -u username -P password

 

C:\Program Files\mosquitto>mosquitto_pub  -p 27839 -t MY -u username -P password -m asdf

+

 

allow_anonymous true가 없으면 아래 에러가 발생한다.

Connection error: Connection Refused: not authorised.

 

전체 테스트 과정은 아래와 같다.

윈도우 (서버) 다른 PC/linux (클라이언트)
1. 프로그램 설치  
2. 방화벽 설정  
3. conf 파일 수정 및 서비스 재기동  
4. client 접속
C:\Program Files\mosquitto>mosquitto_sub.exe -t MY_TOPIC
4. client 접속
$ mosquitto_sub -v -h 192.168.0.11 -t MY_TOPIC
5. publish
C:\Program Files\mosquitto>mosquitto_pub.exe -t MY_TOPIC -m HELLO
 
  6. 메시지 확인
HELLO

-v 시에는
MY_TOPIC HELLO

 

---

Just edit Mosquitto configuration file ( /etc/mosquitto/conf.d/mosquitto.conf ) adding these lines...
allow_anonymous true
listener 1883 0.0.0.0

[링크 : https://stackoverflow.com/questions/24556160/mosquitto-client-obtain-refused-connection]

[링크 : https://iotmaker.kr/2021/08/23/mosquitto-remote-access-for-windows/]

[링크 : https://blog.naver.com/loyz/222654739136]

[링크 : https://pros2.tistory.com/137]

'프로그램 사용 > mosquitto' 카테고리의 다른 글

mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
CC2531 zigbee - mqtt  (0) 2025.01.07
ubuntu MQTT(mosquito)  (0) 2024.05.23
mosquitto - MQTT broker  (0) 2019.05.15
Posted by 구차니

굽는것도 라즈베리 통해서 저 1.27mm pitch의 망할(!) 커넥터를 해야할 것 같은데 이래저래 좀 귀찮을 듯

일단은 구워져 있고 PC에 연결하면 시리얼 포트로 뜨긴 한데

콘솔에서 먼가 입력해도 baudrate를 115k로 해서 그런가 응답이 없다.

 

[링크 : https://blog.naver.com/fromzip/222009276457]

[링크 : https://m.blog.naver.com/ohminy11/222520636013]

[링크 : https://psychoria.tistory.com/m/692]

 

[링크 : https://github.com/Koenkk/Z-Stack-firmware]

[링크 : https://www.ti.com/product/ko-kr/CC2531]

[링크 : https://www.ti.com/lit/ds/symlink/cc2531.pdf]

'프로그램 사용 > mosquitto' 카테고리의 다른 글

mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
ubuntu MQTT(mosquito)  (0) 2024.05.23
mosquitto - MQTT broker  (0) 2019.05.15
Posted by 구차니

mosquitto 는 broker(서버 역할)

mosquitto-client는 client 역할을 하는 프로그램이다.

$ apt-cache search mosqui
libmosquitto-dev - MQTT version 5.0/3.1.1/3.1 client library, development files
libmosquitto1 - MQTT version 5.0/3.1.1/3.1 client library
libmosquittopp-dev - MQTT version 3.1 client C++ library, development files
libmosquittopp1 - MQTT version 5.0/3.1.1/3.1 client C++ library
mosquitto - MQTT version 5.0/3.1.1/3.1 compatible message broker
mosquitto-clients - Mosquitto command line MQTT clients
mosquitto-dev - Development files for Mosquitto

 

 

publish는 메시지를 송신하고, subscribe는 메시지를 수신한다.

 

$ mosquitto_pub -h [호스트] -t [토픽] -m [메시지]
$ mosquitto_sub -h [호스트] -t [토픽]

[링크 : https://sonjuhy.tistory.com/34]

[링크 : https://changun516.tistory.com/201]

'프로그램 사용 > mosquitto' 카테고리의 다른 글

mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
CC2531 zigbee - mqtt  (0) 2025.01.07
mosquitto - MQTT broker  (0) 2019.05.15
Posted by 구차니

일종의.. 서버 역활을 하는 녀석

eclipse 재단에서 만든건가?

 

[링크 : http://mosquitto.org/]

[링크 : https://midnightcow.tistory.com/36]

'프로그램 사용 > mosquitto' 카테고리의 다른 글

mosquitto qos  (0) 2025.04.18
mosquitto for windows 계정추가  (0) 2025.02.18
mosquitto service for windows  (0) 2025.02.18
CC2531 zigbee - mqtt  (0) 2025.01.07
ubuntu MQTT(mosquito)  (0) 2024.05.23
Posted by 구차니