heiher / hev-socks5-tunnel

A high-performance tun2socks for Linux/Android/FreeBSD/macOS/iOS/WSL2 (IPv4/IPv6/TCP/UDP)
MIT License
931 stars 166 forks source link

Illegal instruction on mips32el #136

Closed VladimirChalanov closed 6 months ago

VladimirChalanov commented 6 months ago

Versions 2.6.8 and 2.6.9 don't work. When launched without parameters, the program displays the version. If I specify the config.yml then it will display "Illegal instruction" error.

Version 2.6.7 works fine.

I use tunnel on openwrt router (Linux 5.10.201 mips GNU/Linux).

cpuinfo

system type : MediaTek MT7628AN ver:1 eco:2 machine : ZyXEL Keenetic Extra II processor : 0 cpu model : MIPS 24KEc V5.5 BogoMIPS : 385.84 wait instruction : yes microsecond timers : yes tlb_entries : 32 extra interrupt vector : yes hardware watchpoint : yes, count: 4, address/irw mask: [0x0ffc, 0x0ffc, 0x0ffb, 0x0ffb] isa : mips1 mips2 mips32r1 mips32r2 ASEs implemented : mips16 dsp Options implemented : tlb 4kex 4k_cache prefetch mcheck ejtag llsc pindexed_dcache userlocal vint perf_cntr_intr_bit perf shadow register sets : 1 kscratch registers : 0 package : 0 core : 0 VCED exceptions : not available VCEI exceptions : not available

heiher commented 6 months ago

could you paste your config?

VladimirChalanov commented 6 months ago

Sure.

config.yml

tunnel:
  # Interface name
  name: tun-vpn
  # Interface MTU
  mtu: 8500
  # Multi-queue
  multi-queue: false
  # IPv4 address
  ipv4: 192.168.70.1
  # IPv6 address
#  ipv6: 'fc00::1'
  # Post up script
# post-up-script: up.sh
  # Pre down script
# pre-down-script: down.sh

socks5:
  # Socks5 server port
  port: 49052
  # Socks5 server address (ipv4/ipv6)
  address: 192.168.1.1
  # Socks5 UDP relay mode (tcp|udp)
  udp: 'udp'
  # Socks5 handshake using pipeline mode
# pipeline: false
  # Socks5 server username
# username: 'username'
  # Socks5 server password
# password: 'password'
  # Socket mark
# mark: 0

#misc:
   # task stack size (bytes)
#  task-stack-size: 20480
   # connect timeout (ms)
#  connect-timeout: 5000
   # read-write timeout (ms)
#  read-write-timeout: 60000
   # stdout, stderr or file-path
#  log-file: stderr
   # debug, info, warn or error
#  log-level: warn
   # If present, run as a daemon with this pid file
#  pid-file: /run/hev-socks5-tunnel.pid
   # If present, set rlimit nofile; else use default value
#  limit-nofile: 65535
heiher commented 6 months ago

Thanks. I figured it out. It will be fixed in next version.

heiher commented 6 months ago

https://github.com/heiher/hev-socks5-tunnel/releases/download/2.7.0/hev-socks5-tunnel-linux-mips32elsf

VladimirChalanov commented 6 months ago

It works.