内蔵デバイスをワイヤレスルーターとして構成し、ネットワーク構成ファイルを使用してこれを達成したいと思います。
有線WANインターフェイスとワイヤレスLANインターフェイスという2つの* .networkファイルがあり、LANトラフィックがWANにアクセスできるようにしたいです。
# cat /etc/systemd/network/wired.network
[Match]
Name=eth0
[Network]
DHCP=ipv4
IPForward=yes
IPMasquerade=yes
無線ルーターと同様に、無線LANネットワークもDHCPを提供します。私はsystemdの統合DHCPサーバーを使用しています。
# cat /etc/systemd/network/wireless.network
[Match]
Name=wlan0*
[Network]
Description = Wireless IP interface
DHCPServer= yes
[Address]
Address = 192.168.128.1/24
Broadcast = 192.168.128.255
[DHCPServer]
PoolOffset = 10
PoolSize = 40
EmitDNS = yes
DNS = 8.8.8.8, 8.8.4.4
DefaultLeaseTimeSec = 600
MaxLeaseTimeSec = 7200
[Route]
2つのネットワーク間にNATがあるべきだと思いますが、これは無線ルーターで一般的ですが、明示的な要件ではありません。
これまで知っている限り、有線インターフェイスはWANに正しく接続されており、ワイヤレスアクセスポイントもDHCPアドレスを提供しています。ただし、WiFi APに接続するとWAN(インターネット)に接続できません。
以下は、一部のネットワークインターフェイスの状態です。
# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
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 00:26:32:f0:03:21 brd ff:ff:ff:ff:ff:ff
inet 192.168.178.107/24 brd 192.168.178.255 scope global dynamic eth0
valid_lft 4650sec preferred_lft 4650sec
inet6 fe80::226:32ff:fef0:321/64 scope link
valid_lft forever preferred_lft forever
3: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default
link/sit 0.0.0.0 brd 0.0.0.0
4: wlan0wext: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:1d:43:40:0d:04 brd ff:ff:ff:ff:ff:ff
inet 192.168.128.1/24 brd 192.168.128.255 scope global wlan0wext
valid_lft forever preferred_lft forever
inet6 fe80::21d:43ff:fe40:d04/64 scope link
valid_lft forever preferred_lft forever
とパスの状態:
# ip route
default via 192.168.178.1 dev eth0 proto dhcp src 192.168.178.107 metric 1024
192.168.128.0/24 dev wlan0wext proto kernel scope link src 192.168.128.1
192.168.178.0/24 dev eth0 proto kernel scope link src 192.168.178.107
192.168.178.1 dev eth0 proto dhcp scope link src 192.168.178.107 metric 1024
# ip route show table local
broadcast 127.0.0.0 dev lo proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
broadcast 192.168.128.0 dev wlan0wext proto kernel scope link src 192.168.128.1
local 192.168.128.1 dev wlan0wext proto kernel scope host src 192.168.128.1
broadcast 192.168.128.255 dev wlan0wext proto kernel scope link src 192.168.128.1
broadcast 192.168.178.0 dev eth0 proto kernel scope link src 192.168.178.107
local 192.168.178.107 dev eth0 proto kernel scope host src 192.168.178.107
broadcast 192.168.178.255 dev eth0 proto kernel scope link src 192.168.178.107
[Route]セクションの例はあまり見つからず、ルーティングの基本的な理解だけでした。
ありがとう、Iztok Geras
答え1
上記の.networkファイルに迷彩がないことがわかりました。次の修正:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
私のsystemdバージョンはiptablesサポートなしで構築されているようです。オプションを使用して再構築すると、'libiptc'
問題が解決しました。追加する必要があります
IPForward=yes
IPMasquerade=yes
また、wireless.networkファイルに移動します。
答え2
それはあなたのものと見なされRHEL 5 & 6
ます153.xx
System IP
一時的にルートを追加
ip route add 192.168.10.0/24 via 153.254.92.42 dev eth0
永続ルーティングが追加されました。
echo "192.168.10.0/24 via 153.254.92.XX" >> /etc/sysconfig/network-scripts/route-eth1
~のためRHEL 7
一時的にルートを追加
ip route add 192.168.20.0/29 via 153.254.92.XX dev enp00s0f0
永続ルーティングが追加されました。
echo "192.168.10.0/24 via 153.254.92.XX" >> /etc/sysconfig/network-scripts/ifcfg-enp00s0f0
答え3
問題は、ルーティング構成ではなく、iptables構成が欠落していることです。