Migrando do Ubuntu para o Windows 10, Hyper-V e se livrando de um roteador de ferro

Tendo comprado um laptop novo, lamento que meu amado Ubuntu não apóie mais os sensores e os fãs vibrem constantemente, tornando o trabalho desconfortável. Ao mesmo tempo, se você baixar o Windows 10 Pro pré-instalado no disco rígido original, haverá um silêncio agradável para o ouvido. Enquanto estava frio lá fora (e em casa), era suportável. Mas quando o calor chegou, a paciência chegou ao fim. Foi decidido migrar para o Windows.

No meu trabalho, uso várias máquinas virtuais para criar, testar e depurar software desenvolvido. O Windows 10 Pro inclui virtualização Hyper-V - depois que o dinheiro é pago, você precisa usá-lo! No Ubuntu, usei libvirt e máquinas virtuais em uma rede virtual interna.

Transferindo o Windows do disco original para o SSD e convertendo as imagens das máquinas virtuais para o formato hyper-v, com mágoa, comecei a desenvolver um novo sistema operacional.

Acabou não sendo tão assustador! Os desktops virtuais foram substituídos pelos desktops do Windows (infelizmente apenas os horizontais), o console substituiu o console WSL (Windows Subsystem for Linux), o VcXsrv foi instalado e adicionado ao programa de inicialização dos aplicativos X11, as máquinas virtuais começaram a trabalhar no Hyper-V e até conseguiram iniciar o OSX.

O terminal nativo acabou por não ser totalmente conveniente e sem abas, portanto foi implacavelmente substituído pelo terminal xfce4, que é iniciado por meio de um atalho com uma janela oculta do console do linux:

imagem

Object

C:\Windows\System32\wscript.exe ./runhidden.vbs bash -c "export DISPLAY=:0.0; export GDK_DPI_SCALE=1.2; cd ~; exec xfce4-terminal"

( , X11 ), :

' Simple command-line help.
select case WScript.Arguments(0)
case "-?", "/?", "-h", "--help"
  WScript.echo "Usage: runHidden executable [...]" & vbNewLine & vbNewLine & "Runs the specified command hidden (without a visible window)."
  WScript.Quit(0)
end select

' Separate the arguments into the executable name
' and a single string containing all arguments.
exe = WScript.Arguments(0)
sep = ""
for i = 1 to WScript.Arguments.Count -1
  ' Enclose arguments in "..." to preserve their original partitioning.
  args = args & sep & """" & WScript.Arguments(i) & """"
  sep = " "
next

' Execute the command with its window *hidden* (0)
WScript.CreateObject("Shell.Application").ShellExecute exe, args, "", "open", 0

:

image

, TP-LINK WR703N OpenWRT:

image

VPN . , , WiFi , , WiFi, . WiFi , , .

( ), , . , Windows .

Hyper-V . , . LAN Internal:

image

. , « » — Windows .

WiFi:

image

:

image

Ubuntu 16.04. 16.04? 18.04 /etc/network/interfaces netplan — ! :

image

, Microsoft UEFI .

, ifconfig. WiFi ip . , :
dhclient eth0 eth1 eth2

, dhcp.
eth0 — , eth1 — , eth2 — ( ). 192.168.3.0.

/etc/network/interfaces , , nano:

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

# Internal LAN
auto eth1
iface eth1 inet static
        address 192.168.3.1
        netmask 255.255.255.0
        network 192.168.3.0
        broadcast 192.168.3.255

# The primary network interface
allow-hotplug eth2
iface eth2 inet dhcp

. ( ).

, .

:
sudo apt install dnsmasq iptables-persistent netfilter-persistent openvpn

ip :

cat > /etc/sysctl.d/10-forwarding.conf 
net.ipv4.ip_forward=1

:

cat > /etc/iptables/rules.v4
# Generated by iptables-save v1.6.0 on Fri Jun 22 11:13:10 2018
*nat
:PREROUTING ACCEPT [2901:568651]
:INPUT ACCEPT [707:80315]
:OUTPUT ACCEPT [445:30025]
:POSTROUTING ACCEPT [14:1200]
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -o eth2 -j MASQUERADE
-A POSTROUTING -o tun+ -j MASQUERADE
COMMIT
# Completed on Fri Jun 22 11:13:10 2018
# Generated by iptables-save v1.6.0 on Fri Jun 22 11:13:10 2018
*filter
:INPUT ACCEPT [57264:68964200]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [44820:7558046]
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth1 -o tun+ -j ACCEPT
COMMIT
# Completed on Fri Jun 22 11:13:10 2018

dhcp :

cat > /etc/dnsmasq.d/router.conf 
dhcp-authoritative
domain-needed
localise-queries
read-ethers
bogus-priv
expand-hosts
local-service
domain=lan
server=/lan/
dhcp-leasefile=/tmp/dhcp.leases

interface=eth1
dhcp-range=lan,192.168.3.100,192.168.3.249,255.255.255.0,12h

Windows !

image

openvpn .

, , ?

— Windows 10 ! . ! …

image

, . , . , , .

, ( — Visual Studio):

image

, , .

github.
, , (, ) Windows NoWiFi.

, , , !

, !

Source: https://habr.com/ru/post/pt429856/


All Articles