인바운드
listeners 필드를 사용하면 하나의 설정에서 여러 인바운드 포트를 동시에 열 수 있으며, mihomo 자체가 Shadowsocks/VMess/TUIC 서버 역할을 하게 할 수도 있습니다. 기능적으로는 port/socks-port/mixed-port를 각각 작성하는 것과 동등하지만 더 유연합니다.
LAN 인바운드
LAN 트래픽을 리스닝하는 데 사용되며, 암호화되지 않은 전송 환경에 적합합니다:
config.yaml YAML
listeners: - name: socks5-in-1 type: socks port: 10808 # listen: 0.0.0.0 # 기본값은 0.0.0.0을 리스닝 # rule: sub-rule-name1 # 기본적으로 rules를 사용하며, 해당 sub-rule을 찾지 못하면 rules로 폴백 # proxy: proxy # 비어있지 않으면 이 인바운드 트래픽을 지정한 proxy에서 바로 처리 # udp: false # 기본값은 true - name: http-in-1 type: http port: 10809 listen: 0.0.0.0 - name: mixed-in-1 type: mixed # HTTP(S)와 SOCKS 프록시 혼합 port: 10810 listen: 0.0.0.0 - name: redir-in-1 type: redir port: 10811 listen: 0.0.0.0 - name: tproxy-in-1 type: tproxy port: 10812 listen: 0.0.0.0 - name: tunnel-in-1 type: tunnel port: 10816 listen: 0.0.0.0 network: [tcp, udp] target: target.com - name: tun-in-1 type: tun stack: system # gvisor / lwip dns-hijack: - 0.0.0.0:53 inet4-address: # IPv4 주소 대역을 반드시 수동으로 설정해야 함 - 198.19.0.1/30 inet6-address: # IPv6 주소 대역을 반드시 수동으로 설정해야 함 - "fdfe:dcba:9877::1/126"
각 항목은 공통적으로 rule(이 인바운드가 기본적으로 사용할 서브 규칙을 지정하며, 찾지 못하면 메인 규칙으로 폴백)과 proxy(비어있지 않으면 이 인바운드 트래픽을 지정한 아웃바운드 프록시/프록시 그룹에서 바로 처리하며 라우팅 규칙을 건너뜀)를 지원합니다.
인터넷 인바운드
mihomo 자체가 암호화 프로토콜 서버 역할을 하게 하여, 다른 기기가 이 기기를 Shadowsocks / VMess / TUIC 노드처럼 연결할 수 있게 합니다:
config.yaml YAML
listeners: - name: shadowsocks-in-1 type: shadowsocks port: 10813 listen: 0.0.0.0 password: vlmpIPSyHH6f4S8WVPdRIHIlzmB+GIRfoH3aNJ/t9Gg= cipher: 2022-blake3-aes-256-gcm - name: vmess-in-1 type: vmess port: 10814 listen: 0.0.0.0 users: - username: 1 uuid: 9d0cb9d0-964f-4ef6-897d-6c6b3ccf9e68 alterId: 1 - name: tuic-in-1 type: tuic port: 10815 listen: 0.0.0.0 certificate: ./server.crt private-key: ./server.key
프로토콜별 특수 필드(예: mixed의 users/TLS 인증서, TUIC의 token/users 둘 중 하나 선택)는 해당 프로토콜 페이지를 참고하세요. 이 레벨에서 구독 링크 형식의 인바운드를 바로 받고 싶다면 ss-config: ss://... / vmess-config: vmess://...와 같은 한 줄 작성법도 사용할 수 있습니다.