设置路由器,无法连接某些设备

设置路由器,无法连接某些设备

我正在制作 Fedora 路由器和 DNS。我从未做过任何复杂的网络,但现在我需要这样做,但是我找到的所有路由器指南似乎都不适合我。我删除了所有内容,并在最简单的配置上重新开始了几次,但到目前为止没有成功。这是我的简化网络:

fedora router and dns
||192.168.122.1 ---  virbr0 --------------- virbr0-guest 192.168.122.x
||10.0.0.53   ----- enp4s0f2 -- tplink ---- tplink-guest 10.0.0.x
||                            10.0.0.1
||192.168.8.53 ----  wlp3s0 ---- wifi  ---- internet
                             192.168.8.1

我尝试对所有设备执行 ping 操作,结果如下:

  • Fedora 可以 ping 任何内容,并且 DNS 在所有设备上正常运行

  • KVM 开启virbr0,可以访问互联网并 ping 所有内容

  • tplink-guest 可以 ping 通Fedora 系统无线上网,也可以 ping 互联网主机,但无法通过浏览器访问它们

以下是防火墙和路由器的配置:

[root@fedora ~]# firewall-cmd --list-all --zone 
externalexternal (active)
target: default
icmp-block-inversion: no
interfaces: enp4s0f2
sources: 
services: ssh dns dhcp http https
ports: 
protocols: 
masquerade: yes
forward-ports: 
source-ports: 
icmp-blocks: 
rich rules: 

[root@fedora ~]# firewall-cmd --list-all --zone public
public (active)
target: default
icmp-block-inversion: no
interfaces: wlp3s0
sources: 
services: ssh mdns dhcpv6-client http kde-connect iscsi-target https
ports: 8140/tcp 8140/udp
protocols: 
masquerade: yes
forward-ports: 
source-ports: 
icmp-blocks: 
rich rules: 

[root@fedora ~]# cat /etc/firewalld/direct.xml
<?xml version="1.0" encoding="utf-8"?>
<direct>
<passthrough ipv="ipv4">-t nat -I POSTROUTING -o enp4s0f2 -j MASQUERADE -s 10.0.0.0/24</passthrough>
</direct>

[root@fedora network-scripts]# ip route
default via 192.168.8.1 dev wlp3s0 proto static metric 600 
10.0.0.0/24 dev enp4s0f2 proto kernel scope link src 10.0.0.53 metric 100 
192.168.8.0/24 dev wlp3s0 proto kernel scope link src 192.168.8.100 metric 600 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 


[root@fedora ~]# cat /etc/sysctl.d/10-dns.conf 
net.ipv4.ip_forward = 1
net.ipv4.conf.all.proxy_arp = 1

[root@fedora ~]# ip a
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: enp4s0f2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 30:85:a9:18:43:bb brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.53/24 brd 10.0.0.255 scope global enp4s0f2
    valid_lft forever preferred_lft forever
    inet6 fe80::6ef4:35db:3466:842b/64 scope link 
    valid_lft forever preferred_lft forever
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 68:5d:43:ae:24:37 brd ff:ff:ff:ff:ff:ff
    inet 192.168.8.100/24 brd 192.168.8.255 scope global wlp3s0
    valid_lft forever preferred_lft forever
    inet 192.168.8.53/24 brd 192.168.8.255 scope global secondary wlp3s0
    valid_lft forever preferred_lft forever
    inet6 fe80::9132:115e:2da1:a084/64 scope link 
    valid_lft forever preferred_lft forever
4: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 52:54:00:eb:66:fb brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
    valid_lft forever preferred_lft forever
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
    link/ether 52:54:00:eb:66:fb brd ff:ff:ff:ff:ff:ff

以及tplink配置:

IP: 10.0.0.1
Subnet mask: 255.255.255.0
Default gateway: 10.0.0.53
DNS: 10.0.0.53

我需要在 virbr0 和 tplink 之间共享互联网访问、文件和服务器,但第三天我还是卡住了。我认为这是我尝试过的所有方法中最好的,但也许还有更好的方法。那么我做错了什么还是我遗漏了什么?

编辑: 因此,我尝试学习网络而不是谷歌搜索,做了一些改变,更接近期望的结果。我改变的事情:

  • 修改路线和防火墙
  • 在 tplink 路由器上禁用 DHCP,并在 fedora 路由器上设置 DHCP

    [root@fedora ~]# cat /etc/dhcp/dhcpd.conf
    默认租用时间 600;
    最大租用时间 7200;
    选项子网掩码 255.255.255.0;
    选项广播地址 10.0.0.255;
    选项路由器 10.0.0.53;
    选项域名服务器 10.0.0.53; 子网 10.0.0.0 网络掩码
    255.255.255.0 {
    范围 10.0.0.110 10.0.0.254;
    }

这个使一切正常,但是一件事。Tplink-访客无法访问virbr0-guests,但他们可以 ping他们,甚至这一次路由追踪他们。

访问 Apache 虚拟主机时,我还注意到一件奇怪的事情。我仍然收到拒绝连接错误,但是当我转到 host.example 时,它​​会打开http://host.example,但是当我转到 ssl.example 时,它​​将我重定向到https://ssl.example 所以我以某种方式获得了有关重定向到 https来自 apache。我想不出是什么原因导致此问题,或者我该如何继续。

相关内容