
Tengo un sistema Linux integrado que ejecuta Ubuntu conectado a través de Ethernet a mi computadora portátil que también ejecuta Ubuntu. Mi computadora portátil está conectada a mi red doméstica a través de wifi. Me gustaría crear una red local entre mi computadora portátil y la placa (Altera DE1-SoC) a través de Ethernet con esta red conectada a mi red doméstica a través de la NIC wifi de mi computadora portátil. Lo ideal sería permitir que el sistema integrado realice el descubrimiento DCHP en mi red doméstica para obtener su propia dirección IP. ¿Cuáles son las principales configuraciones/pasos que debo seguir para hacer esto? Las interfaces de mi computadora portátil son
enp1s0 Link encap:Ethernet HWaddr ec:f4:bb:9c:2f:35
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:736 errors:0 dropped:0 overruns:0 frame:0
TX packets:5148 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:251712 (251.7 KB) TX bytes:943851 (943.8 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1303331 errors:0 dropped:0 overruns:0 frame:0
TX packets:1303331 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:504332328 (504.3 MB) TX bytes:504332328 (504.3 MB)
wlp2s0 Link encap:Ethernet HWaddr a0:88:69:70:16:d8
inet addr:192.168.1.148 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: 2601:4b:500:1d01:c03a:e05e:9c30:b44e/64 Scope:Global
inet6 addr: fe80::1095:5763:9405:b652/64 Scope:Link
inet6 addr: 2601:4b:500:1d01:774f:fccd:5479:e9bc/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6588443 errors:0 dropped:0 overruns:0 frame:0
TX packets:2426855 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6843503929 (6.8 GB) TX bytes:502932524 (502.9 MB)
Creo que enp1s0 corresponde a la NIC Ethernet y wlp2s0 corresponde a la NIC inalámbrica.
En el tablero tengo
jfrye@DE1-SoC:~$ ifconfig
eth0 Link encap:Ethernet HWaddr da:e9:a5:9c:c8:58
inet6 addr: fe80::d8e9:a5ff:fe9c:c858/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:577 errors:0 dropped:0 overruns:0 frame:0
TX packets:546 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:197334 (197.3 KB) TX bytes:175844 (175.8 KB)
Interrupt:31 Base address:0x4000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:72 errors:0 dropped:0 overruns:0 frame:0
TX packets:72 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:6016 (6.0 KB) TX bytes:6016 (6.0 KB)
/etc/network/interfaces en la computadora portátil
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo wlp2s0
iface lo inet loopback
auto lo enp1s0
iface enps1s0 inet dhcp
/etc/network/interfaces a bordo
#interfaces (5) file used by ifup(8) and ifdown(8)
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
Cuando hago ifdown y ifup eth0 en el tablero, obtengo
Listening on LPF/eth0/da:e9:a5:9c:c8:58
Sending on LPF/eth0/da:e9:a5:9c:c8:58
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 15 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 17 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 13 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 11 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 21 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 19 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 12 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 10 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 14 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 15 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 9 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 16 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 13 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 16 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 20 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 10 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0xb785c867)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5 (xid=0xb785c867)
No DHCPOFFERS received.
Respuesta1
La funcionalidad que solicita es muy difícil de implementar, ya que requiere encabezados Wi-Fi de 4 direcciones. Cada paquete de Wi-Fi puede contener 4 direcciones MAC: una dirección Ethernet inicial y final y una dirección Wi-Fi inicial y final. Sin embargo, en la mayoría de las aplicaciones domésticas, la dirección Ethernet final no es necesaria, ya que la dirección Wi-Fi final generalmente se refiere al mismo dispositivo (piense en su teléfono o computadora portátil). Por lo tanto, muchos enrutadores Wi-Fi domésticos bloquean el tráfico mediante encabezados de 4 direcciones, supuestamente por razones de seguridad.
Intenté una tarea similar: teníamos un servidor solo Ethernet que queríamos conectar a nuestra red Wi-Fi. No teníamos una llave o tarjeta Wi-Fi a mano, pero sí teníamos muchas Raspberry Pis, por lo que decidimos usar simplemente una Pi como nuestro adaptador. Sin embargo, nos topamos con este mismo problema.
En el futuro, tiene varias opciones (que yo sepa):
Vea si su enrutador admite paquetes de 4 direcciones, en cuyo caso solo tendrá que conectar las redes de su computadora portátil; cada enrutador es diferente y el suyo podría admitir el enrutamiento de 4 direcciones.
Cree una subred en su computadora para comunicarse con el dispositivo integrado, mientras está conectado a su Wi-Fi; esto se puede lograr usando un servidor DHCP que se ejecuta en la interfaz Ethernet. También puede implementar NAT para permitir que el dispositivo integrado acceda a su red Wi-Fi e Internet. Sin embargo, tendrá que reenviar el puerto si desea que se pueda acceder al dispositivo integrado desde la red Wi-Fi.
Pase paquetes directamente entre las interfaces de la computadora portátil, eliminándola efectivamente de la red. Esta es la ruta que tomamos con el Pis. Nosotros usamoscable_wlan. Incluso escribí un rápidoguión de configuraciónpara un Pi que probablemente se ejecutaría en Ubuntu (si desactiva netplan). Según este esquema, la red considera que el dispositivo integrado tiene la dirección MAC Wi-Fi de la computadora portátil. Tuvimos problemas al usar DHCP (probablemente porque la computadora conectada ignoró DHCPOFFERS con la dirección incorrecta), por lo que recomendaría usar una IP estática con esta ruta.
Lo siento, no pude proporcionar una solución óptima. AFAIK, el hardware no la admite. Avíseme si se le ocurre uno mejor, para poder implementarlo también con nuestro Pis.