ubuntu14.04怎么做个网关
发布网友
发布时间:2022-04-24 19:50
我来回答
共1个回答
热心网友
时间:2023-10-09 03:02
案例. 仅供参考.
在CentOS 6, Ubuntu 14.04, Debian7, CentOS 5, RHEL 5/6都可用.
以下是我的具体案例, 请依据你的实际情况修改.
网络拓扑:
Gateway / NAT server,
eth0 --- public internet 59.72.122.110 netmask 255.255.255.0 gateway 59.72.122.254
eth1 --- private network 192.9.200.200 netmask 255.255.255.0 gateway 192.9.200.254
eth1 链接一个私有的交换机或者集线器, 其他的机器, 包括无线路由器, 链接该交换机或者集线器, 192.9.200.254是eth1所链接的交换机的网关地址.
在Gateway / NAT server上设定.
先设定Gateway / NAT server上的两个网络.
#### The private network runs on interface eth1
#### The public network runs on interface eth0
EXTIF="eth0"
INIF="eth1"
export INIF EXTIF
### shutdown all interfaces.
ifconfig eth0 down
ifconfig eth1 down
ifconfig eth2 down
ifconfig eth3 down
### public
ifconfig $EXTIF hw ether 00:11:B0:19:89:64
ifconfig $EXTIF 59.72.122.110 netmask 255.255.255.0
### private
ifconfig $INIF 192.9.200.200 netmask 255.255.255.0
### Bring up the two interfaces
ifconfig $EXTIF up
ifconfig $INIF up
### configure the route table
route add -net 192.9.0.0 netmask 255.255.0.0 gw 192.9.200.254 dev $INIF
route add default gw 59.72.122.254 dev $EXTIF
####EOF
请酌情修改.
####BOF
#!/bin/bash
EXTIF="eth0"
INIF="eth1"
INNET="192.9.200.0/24"
export INIF EXTIF INNET
### For NAT Gateway
# Starting NAT Server
echo "1" > /proc/sys/net/ipv4/ip_forward
### Flush the original rules
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
/sbin/iptables -F -t nat
/sbin/iptables -X -t nat
/sbin/iptables -Z -t nat
# Set Default Rules
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT
### No extra control
### All Forward from the private INNET is allowed.
### Accept all the Forward request form $INIF
/sbin/iptables -A FORWARD -i $INIF -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -o $INIF -j MASQUERADE
### Forward chain
### Allow * client to access private network
/sbin/iptables -A FORWARD -i ppp+ -o $INIF -j ACCEPT
/sbin/iptables -A FORWARD -i $INIF -o ppp+ -j ACCEPT
### Allow * client to access pub network
/sbin/iptables -A FORWARD -i ppp+ -o $EXTIF -j ACCEPT
/sbin/iptables -A FORWARD -i $EXTIF -o ppp+ -j ACCEPT
###
# the following two lines Enable iptables work in High Efficiency
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
### EOF####
抱歉, 我不会使用ipbtale指令, 就写了这个简单的脚本, 开机自己运行.
如果你没有*服务, 请忽略ppp+相关的设定.
如果你有其他安全要求, 请修改INPUT为DROP, 然后逐条开放.
客户机上的设定:
IP和eth1保持一个地址段, 但是记得网关指定为Gateway /NAT server上的eth1的IP地址.
无线路由器上, 设定WLAN端口IP后, 指定网关是192.9.200.200, 在LAN上开启DHCP.
其他台式机, 如何开启DHCP, 我自己没有处理, 我想你需要在Gateway /NAT server上开起DHCP服务就可以了.
但是记得要推送网关为你的eth1的IP地址.