我正在做一个fedora路由器和DNS。 我从来没有做过更难的networking,但现在我需要这样做,但是我find的路由器指南似乎都不适合我。 我删除了所有内容,并以最简单的configuration启动了几次,至今没有成功。 这是我的简化networking:
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在所有设备上工作
virbr0上的 KVM可以访问互联网,并能ping通所有的东西
tplink-guest可以ping的fedora和wifi ,也可以ping互联网主机,但不能通过浏览器访问它们
这里是firewalld和路由器的configuration:
[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
和tplinkconfiguration:
IP: 10.0.0.1 Subnet mask: 255.255.255.0 Default gateway: 10.0.0.53 DNS: 10.0.0.53
我需要在virbr0和tplink之间共享互联网访问,文件和服务器,但是我第三天就被卡住了。 我认为这是我尝试过的最好的方法,但也许有更好的办法。 所以,我做错了什么,或者我错过了什么?
编辑:所以我试图学习networking,而不是使用谷歌search,做了一些改变,并接近所需的结果。 我改变的事情:
在tplink路由器上禁用DHCP并在fedora路由器上设置DHCP
[root @ fedora〜]#cat /etc/dhcp/dhcpd.conf
default-lease-time 600;
最大租赁时间7200;
选项子网掩码255.255.255.0;
选项广播地址10.0.0.255;
选项路由器10.0.0.53;
选项domain-name-servers 10.0.0.53;
子网10.0.0.0 netmask 255.255.255.0 {
范围10.0.0.110 10.0.0.254;
}
这使一切工作,但一件事。 Tplink客人不能访问 virbr0客人,但他们可以ping他们,这次甚至跟踪他们。
访问Apache虚拟主机时,我也注意到了一件奇怪的事情。 我仍然得到连接拒绝错误,但是当我去host.example打开http://host.example ,但是当我去到SSL.example它redirect到https ://ssl.example所以不知何故我得到的信息关于从Apache redirect到https 。 我想不出任何可能导致它的事情,或者我应该如何继续。