AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[interface](server)

Martin Hope
Ricardo Matos
Asked: 2022-03-01 05:07:54 +0800 CST

通过 VPN 接口重定向特定流量

  • 0

我,

我想通过特定接口重定向特定端口。

直到现在我完成的是

 cat /etc/iproute2/rt_tables | grep "200 force.route" > /dev/null
 if [ $? != 0 ]; then
   echo "200       force.route" >> /etc/iproute2/rt_tables
 fi

 ip rule del from all fwmark 200 table force.route
 ip rule add from all fwmark 200 table force.route
 ip route del 0.0.0.0/1 via 92.240.245.1 dev tun_02 table force.route
 ip route add 0.0.0.0/1 via 92.240.245.1 dev tun_02 table force.route
 ip route flush cache
 iptables -A OUTPUT -t mangle -o br0 -p icmp -j MARK --set-mark 200

但....

当我 ping 包通过特定设备时,请参阅

 tcpdump -i tun_02

然后,期待响应,但我没有对 echo-r​​equest 的响应。

我怎样才能做到这一点?

到现在为止是我完成的。

vpn redirect iptables interface iproute2
  • 1 个回答
  • 69 Views
Martin Hope
jayunit100
Asked: 2021-07-04 04:49:47 +0800 CST

我应该如何调试由于 MSFT_NetRoute “未找到”而失败的 Microsoft CIM?

  • 1

一般来说,应该如何调试与CmdletizationQuery_NotFound消息相关的故障,为什么基于 MSFT_NetRoute 的查询会注册这样的错误?

细节

具体来说,我的 Kubernetes CNI 提供程序 (antrea) 发布了一条与其启动时间相关的错误消息MSFT_NetRoute,因为它无法成功运行引导自身所需的 powershell 查询。错误消息有一个可疑字符串,其中:

  • 可能与 powershell 版本有关(我在这篇文章的后面没有确认,但这是一个合理的假设)
  • 我还考虑到这个错误可能来自我没有安装的外部东西......
  • 最后,在不完全了解 cmdletizationQuery 错误消息的性质的情况下,可以合理地假设这与较低级别的网络设置问题有关。
   + FullyQualifiedErrorId : CmdletizationQuery_NotFound,Get-NetRoute

此消息的上述片段突出显示了Get-NetRoute下面发生的相关错误,这令人费解,因为它似乎表明该Get-NetRoute查询不是要运行的有效查询。但是https://docs.microsoft.com/en-us/powershell/module/nettcpip/get-netroute?view=windowsserver2019-ps似乎暗示 Get-NetRoute 在 powershell 中默认可用。

错误信息

ROOT/StandardCimv2/MSFT_NetRoute class on the  CIM server: SELECT * FROM MSFT_NetRoute  WHERE ((DestinationPrefix LIKE
'0.0.0.0/0')) AND ((InterfaceIndex = 26)). Verify query parameters and retry.
At line:1 char:3
+ $(Get-NetRoute -InterfaceIndex 26 -DestinationPrefix 0.0.0.0/0 ).Next ...
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (MSFT_NetRoute:String) [Get-NetRoute], CimJobException
    + FullyQualifiedErrorId : CmdletizationQuery_NotFound,Get-NetRoute

Powershell 版本

这台机器上的powershell版本似乎是最新的......(我认为5.1在windows server 2019上是正常的)......

Name                           Value
----                           -----
PSVersion                      5.1.17763.1852
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.17763.1852
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

注意:我已经在具有类似 5.1.x powershell 版本 (5.1.17763.1490) 的类似版本的 windows server 2019 中对此进行了测试,但没有看到此故障。所以,

问题

  • 我需要做些什么才能Get-NetRoute在我的机器上正常工作吗?
  • 这是否与其他事情有关(即在单个 VM 上配置网络接口的方式)?请注意,这是一个 VirtualBox VM,所以如果出现桥接或 NAT 网络问题,我不会完全震惊。
networking powershell interface windows-server-2019
  • 1 个回答
  • 392 Views
Martin Hope
Dave
Asked: 2021-04-15 07:46:28 +0800 CST

libreswan 为 ipsec 流量配置虚拟接口

  • 1

描述:

我正在学习如何使用 libreswan 配置 ipsec。我想在两台主机之间建立一个主机到主机的 vpn。我希望每个主机都为其 ipsec 隧道使用虚拟接口。

问题:

我用 RSA 设置了我的 ipsec 配置,并启动了隧道,但是没有构建虚拟接口。

系统:

(2) RHEL 8.2 虚拟机

我不清楚什么

  • 如何启动隧道?我知道我运行了ipsec auto --up mytunnel,但是该命令需要同时在两个系统上运行还是先在右侧然后在左侧运行?
  • 我的“左”和“右” ip 是在可以相互路由的接口上配置的 ip 地址。这个对吗?
  • 我觉得我在这里错过了一步,比如配置接口并设置 libreswan 以使用它?

故障排除:

  • 我按照这些说明如何设置 ipsec 隧道。
  • 我用 netstat 确认,似乎所有接口都在监听 500 和 4500。
  • 执行了一个ip a,我看到没有创建虚拟接口。
  • 为了启动我运行的隧道systemctl restart ipsec.service,然后ipsec auto --up mytunnel,最后ipsec auto --up mytunnel,我看到了这个输出
181 "mytunnel" #1: initiating IKEv2 IKE SA
181 "mytunnel" #1: STATE_PARENT_I1: sent v2I1, expected v2R1
182 "mytunnel" #2: STATE_PARENT_I2: sent v2I2, expected v2R2 {auth=IKEv2 cipher=AES_GCM_16_256 integ=n/a prf=HMAC_SHA2_512 group=DH19}
002 "mytunnel" #2: IKEv2 mode peer ID is ID_FQDN: '@west'
003 "mytunnel" #2: Authenticated using RSA with IKEv2_AUTH_HASH_SHA1
002 "mytunnel" #2: negotiated connection [10.10.10.111-10.10.10.112:0-65535 0] -> [10.10.10.111-10.10.10.112:0-65535 0]
004 "mytunnel" #2: STATE_V2_IPSEC_I: IPsec SA established transport mode {ESP=>0xe25ebdee <0x3d8ac123 xfrm=AES_GCM_16_256-NONE NATOA=none NATD=none DPD=passive}

我的 ipsec 配置:

conn mytunnel
    auto=add
    leftid=@west
    left=10.10.10.111
    leftrsasigkey=0sAwEAAbqd ... blqu1K0=
    rightid=@east
    right=10.10.10.112
    rightrsasigkey=0sAwEAAboA ... NEJbLk=
    authby=rsasig

编辑 修复了我的日志输出。

EDIT2 我了解到 ipsec 不会自行设置虚拟接口。这需要通过 IPIP、GRE 或其他方法完成。

  • 这是有关设置 VPN 路由的不同方式的有用链接。
  • 这是关于如何设置 IPIP 的一个很好的链接。
redhat ipsec interface libreswan
  • 1 个回答
  • 893 Views
Martin Hope
Hoto Cocoa
Asked: 2020-12-14 04:04:12 +0800 CST

使用 netns 强制 Java 应用程序使用指定 IP

  • 0

我的 VPS 提供商为我的 vps 分配了 4 个 IPv4。但是,这分配给单个 NIC,并且 VLAN 不起作用(可能是我的配置问题)。如果我尝试使用 VLAN,我无法使用 VLAN 接口获取外部网络。

我想在每个 IP 地址上运行相同的 Java 应用程序。该应用程序服务于图像缓存服务器并将自己的 IP 地址通知给主服务器以发送 HTTP 请求,主服务器从 HTTP 请求 IP 中获取 IP。

因此,我需要强制使用指定 IP 来为每个 Java 进程连接外部网络。

当我使用以下配置尝试 netns 时,app0_ns 可以正常工作,但其他人不能。他们可以 ping 到 10.200.0.0/16,但无法访问外部网络。

这里是我尝试制作 netns 的命令。

我的 vps 使用 Ubuntu 18.04,我可以更改操作系统版本。

ip netns add app0_ns
ip netns add app1_ns
ip netns add app2_ns
ip netns add app3_ns

ip link add v_app0a type veth peer name v_app0b
ip link add v_app1a type veth peer name v_app1b
ip link add v_app2a type veth peer name v_app2b
ip link add v_app3a type veth peer name v_app3b

ip link set v_app0b netns app0_ns
ip link set v_app1b netns app1_ns
ip link set v_app2b netns app2_ns
ip link set v_app3b netns app3_ns

ip addr add 10.200.0.1/24 dev v_app0a
ip link set v_app0a up
ip addr add 10.200.1.1/24 dev v_app1a
ip link set v_app1a up
ip addr add 10.200.2.1/24 dev v_app2a
ip link set v_app2a up
ip addr add 10.200.3.1/24 dev v_app3a
ip link set v_app3a up

ip netns exec app0_ns ip addr add 10.200.0.2/24 dev v_app0b
ip netns exec app0_ns ip link set v_app0b up
ip netns exec app0_ns ip link set lo up
ip netns exec app0_ns ip route add default via 10.200.0.1

ip netns exec app1_ns ip addr add 10.200.1.2/24 dev v_app1b
ip netns exec app1_ns ip link set v_app1b up
ip netns exec app1_ns ip link set lo up
ip netns exec app1_ns ip route add default via 10.200.1.1

ip netns exec app2_ns ip addr add 10.200.2.2/24 dev v_app2b
ip netns exec app2_ns ip link set v_app2b up
ip netns exec app2_ns ip link set lo up
ip netns exec app2_ns ip route add default via 10.200.2.1

ip netns exec app3_ns ip addr add 10.200.3.2/24 dev v_app3b
ip netns exec app3_ns ip link set v_app3b up
ip netns exec app3_ns ip link set lo up
ip netns exec app3_ns ip route add default via 10.200.3.1

iptables -t nat -A POSTROUTING -s 10.200.0.1/24 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.200.1.1/24 -o eth0:1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.200.2.1/24 -o eth0:2 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.200.3.1/24 -o eth0:3 -j MASQUERADE

iptables -A FORWARD -i eth0 -o v_app0a -j ACCEPT
iptables -A FORWARD -o eth0 -i v_app0a -j ACCEPT
iptables -A FORWARD -i eth0:1 -o v_app1a -j ACCEPT
iptables -A FORWARD -o eth0:1 -i v_app1a -j ACCEPT
iptables -A FORWARD -i eth0:2 -o v_app2a -j ACCEPT
iptables -A FORWARD -o eth0:2 -i v_app2a -j ACCEPT
iptables -A FORWARD -i eth0:3 -o v_app3a -j ACCEPT
iptables -A FORWARD -o eth0:3 -i v_app3a -j ACCEPT

这里我的/etc/network/interfaces.

 auto lo
  iface lo inet loopback

 auto eth0
  iface eth0 inet static
   address [Removed]
   gateway [Removed]
   netmask 255.255.255.0
   dns-nameservers 8.8.8.8 8.8.4.4
   up ip addr add [Removed]/48 dev eth0
   up ip -6 route add [Removed] dev eth0
   up ip -6 route add default via [Removed]

 auto eth0:1
  iface eth0:1 inet static
   address [Removed]
   gateway [Removed]
   netmask 255.255.255.0
   dns-nameservers 8.8.8.8 8.8.4.4

 auto eth0.2
  iface eth0.2 inet static
   address [Removed]
   gateway [Removed]
   netmask 255.255.255.0
   dns-nameservers 8.8.8.8 8.8.4.4
   vlan-raw-device eth0

 auto eth0:3
  iface eth0:3 inet static
   address [Removed]
   gateway [Removed]
   netmask 255.255.255.0
   dns-nameservers 8.8.8.8 8.8.4.4

这里我尝试了VLAN配置。

 auto eth0.3
  iface eth0.3 inet static
   address [Removed]
   gateway [Removed]
   netmask 255.255.255.0
   dns-nameservers 8.8.8.8 8.8.4.4
   vlan-raw-device eth0
java ubuntu vlan interface network-namespace
  • 1 个回答
  • 83 Views
Martin Hope
cernoel
Asked: 2020-06-22 04:53:58 +0800 CST

/etc/network/interfaces 中的网络参数是什么意思或做什么

  • 0

我见过以下配置让我有点头疼

    iface ens192 inet static
    address 10.27.202.21
    netmask 255.255.255.0
    network 10.2.0.0
    broadcast 10.27.0.255
    gateway 10.27.202.1
    dns-nameservers 10.27.2.3
    dns-search my.local.lan 

我了解广播、网络掩码、网关等所有基本参数,但很难找到有关“网络”参数以及如何解释它的任何信息。

对我来说,这似乎有点错误,但它以某种方式起作用。

为什么在所有静态配置中都没有使用这个“网络”参数?(debian 文档)我可以简单地忽略它吗?

我正在使用 debian 10 系统。

networking debian interface
  • 1 个回答
  • 126 Views
Martin Hope
TheClockTwister
Asked: 2020-05-01 07:44:14 +0800 CST

一个网卡上的多个接口

  • 1

我设法在我的 Banana Pi R2 上安装了 Debian。

该设备有两个物理网卡:一个用于 WAN(1 个端口),一个用于 LAN(4 个端口)。

  • eth0
  • eth1

如果我运行ip address,我可以看到,“本机”接口“上”有多个接口,我可以将其识别为板上的各个 LAN 端口:

root@bpi-r2:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 02:02:02:02:02:02 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::2:2ff:fe02:202/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 36:d1:02:41:61:c9 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::34d1:2ff:fe41:61c9/64 scope link
       valid_lft forever preferred_lft forever
4: wan@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 36:d1:02:41:61:c9 brd ff:ff:ff:ff:ff:ff
    inet 10.20.0.88/24 brd 10.20.0.255 scope global wan
       valid_lft forever preferred_lft forever
    inet6 fe80::34d1:2ff:fe41:61c9/64 scope link
       valid_lft forever preferred_lft forever
5: lan0@eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state LOWERLAYERDOWN group default qlen 1000
    link/ether 02:02:02:02:02:02 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.1/24 brd 192.168.0.255 scope global lan0
       valid_lft forever preferred_lft forever
6: lan1@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 02:02:02:02:02:02 brd ff:ff:ff:ff:ff:ff
7: lan2@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 02:02:02:02:02:02 brd ff:ff:ff:ff:ff:ff
8: lan3@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 02:02:02:02:02:02 brd ff:ff:ff:ff:ff:ff
root@bpi-r2:~#

我在...中找不到这些“lan*”和“wan”接口的任何提示/etc/network/interfaces我知道如何创建和管理虚拟接口,但我只知道它们eth0:2,例如...当我尝试分配静态 IP 时将以下内容写入/etc/network/interfaces,网络服务无法调出界面:

iface lan0 inet dhcp
iface wan inet static
    ...

那么这些接口来自哪里以及如何管理它们(添加静态 IP 或 DHCP 等)

编辑1:输出ls /sys/class/net:

root@bpi-r2:~# ls /sys/class/net
eth0  eth1  lan0  lan1  lan2  lan3  lo  wan
root@bpi-r2:~#

找到一个工作配置:

auto lan0 wan

iface wan inet static
        address 137.226.214.58
        netmask 255.255.254.0
        pre-up ip link set $IFACE up
        post-down ip link set $IFACE down
        gateway 137.226.214.1

iface lan0 inet static
        address 10.20.0.88
        netmask 255.255.255.0
        pre-up ip link set $IFACE up
        post-down ip link set $IFACE down
interface linux-networking
  • 2 个回答
  • 887 Views
Martin Hope
Ernest Dujo
Asked: 2020-02-14 16:34:33 +0800 CST

使用配置为请求选择硬件接口?

  • 1

我有一台 linux 机器(基于 Debian 10 的操作系统),有 3 个硬件接口连接到互联网,2 个是 USB 调制解调器:ifconfig 给出 ->

eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether b8:27:eb:95:a0:2c  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 14258  bytes 1613046 (1.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 14258  bytes 1613046 (1.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.199.25.78  netmask 255.255.255.255  destination 10.64.64.64
        ppp  txqueuelen 3  (Point-to-Point Protocol)
        RX packets 7  bytes 130 (130.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 181 (181.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ppp1: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.227.136.222  netmask 255.255.255.255  destination 10.64.64.65
        ppp  txqueuelen 3  (Point-to-Point Protocol)
        RX packets 7  bytes 130 (130.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 181 (181.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.105  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 fe80::e1b9:e62c:3140:bfc5  prefixlen 64  scopeid 0x20<link>
        ether b8:27:eb:c0:f5:79  txqueuelen 1000  (Ethernet)
        RX packets 26548  bytes 5187998 (4.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20025  bytes 5171235 (4.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0 是这里的默认接口,当我尝试时:curl --interface ppp1 ifconfig.me或者curl --interface ppp0 ifconfig.me请求超时,使用 sudo sudo curl --interface ppp1 ifconfig.me给出响应,但等效于 ppp0 超时,要添加哪些正确的路由规则才能选择要路由的硬件接口?

实际路由规则:

default via 192.168.2.1 dev wlan0 proto dhcp src 192.168.2.105 metric 303 
10.64.64.64 dev ppp0 proto kernel scope link src 10.233.6.240 
10.64.64.65 dev ppp1 proto kernel scope link src 10.149.182.92 
192.168.2.0/24 dev wlan0 proto dhcp scope link src 192.168.2.105 metric 303 

ip rule给出:

0:  from all lookup local 
32766:  from all lookup main 
32767:  from all lookup default 

ip -4 route show table all:

default via 192.168.2.1 dev wlan0 
10.64.64.64 dev ppp0 proto kernel scope link src 10.235.137.107 
10.64.64.65 dev ppp1 proto kernel scope link src 10.121.55.130 
192.168.2.0/24 dev wlan0 proto kernel scope link src 192.168.2.101 
local 10.121.55.130 dev ppp1 table local proto kernel scope host src 10.121.55.130 
local 10.235.137.107 dev ppp0 table local proto kernel scope host src 10.235.137.107 
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 127.0.0.1 
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1 
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1 
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1 
broadcast 192.168.2.0 dev wlan0 table local proto kernel scope link src 192.168.2.101 
local 192.168.2.101 dev wlan0 table local proto kernel scope host src 192.168.2.101 
broadcast 192.168.2.255 dev wlan0 table local proto kernel scope link src 192.168.2.101 

PS。重新启动后,我尝试的所有路由都消失了(如预期的那样)

routing ip iptables interface
  • 1 个回答
  • 288 Views
Martin Hope
user4826904
Asked: 2017-03-13 09:29:26 +0800 CST

如果在网桥中添加或删除以太网,rtnetlink 行为是什么?

  • 0

在我研究 RTNETLINK 时,我知道如果在内核空间添加/删除接口,内核将发送 RTM_ADDLINK 或 RTM_DELLINK。但是,如果在网桥中添加或删除以太网,我对 RTNETLINK 消息有疑问?由于向/从桥接器添加或删除以太网实际上并不是添加或删除接口,因此是否有任何 RTNETLINK 消息实际上在两者之间传输?

linux bridge ethernet interface socket
  • 1 个回答
  • 312 Views
Martin Hope
nskalis
Asked: 2017-02-08 07:34:47 +0800 CST

如何找到接口抖动的时间戳

  • 0

您能否告知我如何查看最后一次接口在 linux 主机上抖动的时间?(centos,如果它有所作为)

我尝试了以下方法:

ethtool -S eth0
ip -s link
cat /proc/net/dev
linux networking interface linux-networking
  • 1 个回答
  • 4415 Views
Martin Hope
rudib
Asked: 2016-12-17 13:47:28 +0800 CST

如何通过 USB 连接将以太网连接到主机网络?

  • 3

我有一台单板计算机,我想连接到我的局域网/互联网连接。SBC 没有以太网端口,只有一个当前无法工作的嵌入式无线芯片。但它确实有 USB,我认为应该可以通过 USB 上的以太网将它连接到我的工作站,然后进行某种桥接/转发。我正在使用 Beagle Bone Black Wireless 和(当前)Arch Linux ARM am33x 作为“客户端”。工作站是 Fedora 23。USB 上的以太网正在工作,我可以通过 SSH 连接到 SBC。但是,我没有设法从 SBC 连接到我的本地网络或 Internet。

我已经尝试过的事情清单:

展品一:

这允许我通过 SSH 连接到客户端。

客户端上的配置/命令:

modprobe g_ether

netctl 配置:

Description='USB ethernet connection'

Interface=usb0

Connection=ethernet

IP=static

Address=('192.168.7.2/24')

DNS=('8.8.8.8')

#Gateway=('192.168.1.1')

## For IPv6 autoconfiguration

IP6=stateless

工作站上的配置:

ifconfig enp0s29u1u2 192.168.7.1

展品 b:

我厌倦了连接两个接口(enp0s29u1u2是通过usb端的Eth接口,enp6s0面向我的本地网络和互联网);以下代码在工作站上执行。我在这里找到了这个:Linux 上两个网络之间的路由?

echo 1 >> /proc/sys/net/ipv4/ip_forward
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i enp0s29u1u2 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o enp6s0 -j MASQUERADE
iptables --append FORWARD -i enp6s0 -o enp0s29u1u2 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables --append FORWARD -i enp0s29u1u2 -o enp6s0 -j ACCEPT       

首先,我保留了192.168.1.0/24LAN 和192.168.7.0/24USB 以太网的 IP 地址。但是我无法到达我的网关或工作站下方的任何东西。我还尝试给 Beagle Bone 一个192.168.1.*地址,但也没有用。我可能在这里遗漏了一些东西。路由可能?

展品 c:

我还尝试在接口之间架起一座桥梁。

beaglebone 上的 Netctl 配置设置为如下所示:

描述='USB 以太网连接'

Interface=usb0

Connection=ethernet

IP=static

Address=('192.168.1.210/24')

DNS=('8.8.8.8')

Gateway=('192.168.1.1')

## For IPv6 autoconfiguration

IP6=stateless

命令(工作站):

brctl addbr br0
brctl addif br0 enp6s0 enp0s29u1u2
ifconfig br0 192.168.1.202 (or some random free address)

我必须这样做route add default gw 192.168.1.1才能在我的工作站上重新获得 Internet 访问权限。我也在 beaglebone 上做过,但也没有成功。我不确定,但当我理解网桥时,它的行为应该就像我刚刚将设备连接到以太网交换机(即网络成员可以像网桥不存在一样进行通信;但它显然需要一个单独的ip所以我有点困惑,请给我提示)。

核心问题:

是否需要一些手动路由才能将 Beaglebone 集成到局域网中并获得 Internet 访问权限或其他可能?感谢您的任何提示!当我正在寻找临时解决方案时,Hackarounds 也很受欢迎。

networking usb arch-linux interface linux-networking
  • 1 个回答
  • 3933 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve