github / gh-net

A network bridge between a Codespace and a local machine.
https://github.com/github/gh-net
286 stars 22 forks source link

low-end machines freeze on app initialization #7

Closed legomushroom closed 2 years ago

legomushroom commented 2 years ago

Some of virtual network interfaces sometimes may deadlock entire extension.

Reproduce steps

  1. Create a Codespace that can act as a "host".
  2. Add a network alias to a network interface:
[sudo] ifconfig docker0:0 173.17.0.1 netmask 255.255.0.0
  1. Start the extension, notice that it will hang on connecting.. screen, terminal UI is unresponsive:
[sudo] gh net start
  1. Look at the logs, notice that one interface job never connected and there are not much logs afterward.

Expected behavior

Extension can bind successfully to all interfaces and able to forward network traffic as expected.

Screenshots

image

Desktop (please complete the following information):

NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.15.0
PRETTY_NAME="Alpine Linux v3.15"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://bugs.alpinelinux.org/"

Logs

2022-04-26T21:44:29.613359Z  INFO start-command: start command:
--dns: "true"
--gui: "true"
--repo: "github/gh-net"
--trace: "info"
--location: "local"
2022-04-26T21:44:31.151066Z  INFO local: run_local is_dns: "true"
2022-04-26T21:44:31.151114Z  INFO local: codespace-name: "legomushroom-devcontainer-rrjq4r9h5g76"
2022-04-26T21:44:31.153839Z  INFO client: suitable network interfaces: ["lo", "eth0", "docker0", "tailscale0", "docker0:0"]
2022-04-26T21:44:31.153991Z  INFO client: starting 5 network interface jobs
2022-04-26T21:44:31.171042Z  INFO network: connected
2022-04-26T21:44:31.171270Z  INFO network: connected
2022-04-26T21:44:31.171429Z  INFO network: connected
2022-04-26T21:44:31.171647Z  INFO network: connected
2022-04-26T21:44:35.378037Z  INFO stream: connected
2022-04-26T21:44:35.378213Z  INFO stream: connected
legomushroom commented 2 years ago

Fixed in v0.6.4 🎉