network-proxy-setup.sh 818 B

12345678910111213141516171819202122
  1. #!/bin/sh
  2. # Setup gateway for all the VMs this netVM is serviceing...
  3. network=$(qubesdb-read /qubes-netvm-network 2>/dev/null)
  4. if [ "x$network" != "x" ]; then
  5. if [ -e /proc/sys/kernel ] && ! [ -e /proc/sys/kernel/modules_disabled ]; then
  6. readonly modprobe_fail_cmd='true'
  7. else
  8. readonly modprobe_fail_cmd='false'
  9. fi
  10. gateway=$(qubesdb-read /qubes-netvm-gateway)
  11. netmask=$(qubesdb-read /qubes-netvm-netmask)
  12. secondary_dns=$(qubesdb-read /qubes-netvm-secondary-dns)
  13. modprobe netbk 2> /dev/null || modprobe xen-netback || "${modprobe_fail_cmd}"
  14. echo "NS1=$gateway" > /var/run/qubes/qubes-ns
  15. echo "NS2=$secondary_dns" >> /var/run/qubes/qubes-ns
  16. /usr/lib/qubes/qubes-setup-dnat-to-ns
  17. echo "1" > /proc/sys/net/ipv4/ip_forward
  18. /sbin/ethtool -K eth0 sg off || :
  19. fi