2024年3月10日发(作者:)
ubuntu
双网卡设置内外网上网问题,实现路由转发功能
首先,我们要在一台装有
ubuntu
系统的电脑上再装上一块网卡,使得可以通过配置
ip
、子网掩码等实现
路由转发。
接下来要做的就是手工设置
ip
地址之类的了。
1
、关掉
ubuntu
系统提供的
network-manager
,使用命令就是:
关闭
network-manager
命令:
/etc/init.d/network-manager stop
关闭之后你就会发现你原来通过编辑连接来配
ip
的方法不能用了。
2
、在终端配置两个网卡的
ip
、
netmask
、
getway
等等。
在这里,我们首先要明白两个网卡的作用。
eth0
:该网卡是电脑原装的网卡,我们将它用作连接外网的网卡。
eth1
:该网卡是我们新加的网卡,我们将它作为连接内网的网卡。
安装了双网卡的电脑处于一个中间位置,它所装有的两个网卡的功能就是将内网网段发来的数据包转发
到外网网段去,因为内外网不在一个网段,如果不经过中间的包装修改就无法与外面发起连接。
现在,进入正题,我们就来设置两个网卡的地址。
使用命令:
root@xiaoxiao-Lenovo-G470:~# cd /etc/network
root@xiaoxiao-Lenovo-G470:/etc/network# gedit interfaces
打开
interfaces
文件以后,
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.22.112.74
(外网网卡
ip
地址)
netmask 255.255.255.0
(外网子网掩码)
network 172.22.112.0
(网络)
broadcast 172.22.112.255
(广播地址)
auto eth1
iface eth1 inet static
address 192.168.0.1
(内网网卡
ip
地址)
netmask 255.255.255.0
(内网子网掩码)
network 192.168.0.0
(网络)
broadcast 192.168.0.255
(广播地址)
自己的笔记本电脑也要设置新的
ip
地址,设置网段应属于内网网段。
auto eth0
iface eth0 inet static
address 192.168.0.2
(网卡
ip
地址)
netmask 255.255.255.0
(外网子网掩码)
network 192.168.0.0
(网络)
broadcast 192.168.0.255
(广播地址)
getway 192.168.0.1
(网关地址,因为你要将的数据包从
192
这个网段发出去到
172
这个网段,要经过
eth1
网卡的转发,所以设置
eth1ip
地址网关,发出去的数据包就会通过
eth1
发出去。)
3
、设置完成之后就重启网络,使设置生效。
重启
network-manager
命令:
/etc/init.d/networking restart
4
、可以输入命令:
route -n
查看你所配置的是否成功。
5
、用交叉线连接网卡
eth1
和你的笔记本电脑,之后用你的电脑
ping 192.168.0.1
看是否
ping
通。
用双网卡电脑
ping 192.168.0.2
和
172.22.112.1
看是否
ping
通。
最后,用你的电脑
ping 172.22.112.1
看是否
ping
通,如果都成功了说明实现了转发。
接下来,要做的就是搭建
NAT
,实现地址转换。
1
、首先打开双网卡机器的路由转发功能。
ech"1">/proc/sys/net/ipv4/ip_forward #
打开
ip
转发,
1
表示打开,
0
表示不转发。
也可以进入到
ip_forward
下查看,若是
0
则改为
1
。
2
、依次输入下列命令:
root@ubuntu1-Lenovo:~# iptables -F
(清除所有
ip
规则)
root@ubuntu1-Lenovo:~# iptables -P INPUT ACCEPT
( 打开接受功能)
root@ubuntu1-Lenovo:~# iptables -P F ORWARD ACCEPT
(打开发送功能)
root@ubuntu1-Lenovo:~# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
3
、查看当前
ip
规则:
iptables -t nat -L POSTROUTING
iptables -t nat -D POSTROUTING –verbose
你就会看见你添加的
ip
规则。
这样,内网机器就可以共享上网了,你可以打开红言网校试试看~~
接下来,我们要做的就是构建网桥了,使内外网建立链接。
1
、默认
Ubuntu
是没有网桥设置工具
(brctl)
的。你需要安装
bridge-utils
。下载好安装包之后,要自行安
装。
有线安装软件
:sudo apt-get install
软件名
离线安装软件:
dpkg -i *.deb
2
、其次我们要做的就是删除之前我们设置的
ip
规则。
删除当前
ip
规则:
iptables -t nat -D POSTROUTING 1
查看当前
ip
规则:
iptables -t nat -D POSTROUTING –verbose
这时,你会发现什么都没有了。
3
、输入命令:
root@ubuntu1-Lenovo:/home/ubuntu1# brctl addif br0 eth0
(删除原来网卡
eth0
的配置)
root@ubuntu1-Lenovo:/home/ubuntu1# brctl addif br0 eth1
(删除原来网卡
eth1
的配置)
root@ubuntu1-Lenovo:/home/ubuntu1# ifconfig br0 172.22.112.74 netmask 255.255.255.0
broadcast 172.22.112.255 up
(给网桥分配
ip
地址)
root@ubuntu1-Lenovo:/home/ubuntu1# ifconfig
br0 Link encap:
以太网 硬件地址
10:78:d2:fa:19:13
inet
地址
:172.22.112.74
广播
:172.22.112.255
掩码
:255.255.255.0
inet6
地址
: fe80::1278:d2ff:fefa:1913/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500
跃点数
:1
接收数据包
:45
错误
:0
丢弃
:0
过载
:0
帧数
:0
发送数据包
:7
错误
:0
丢弃
:0
过载
:0
载波
:0
碰撞
:0
发送队列长度
:0
接收字节
:10850 (10.8 KB)
发送字节
:578 (578.0 B)
eth0 Link encap:
以太网 硬件地址
10:78:d2:fa:19:13
inet6
地址
: fe80::1278:d2ff:fefa:1913/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500
跃点数
:1
接收数据包
:23783
错误
:0
丢弃
:185
过载
:0
帧数
:0
发送数据包
:2360
错误
:0
丢弃
:0
过载
:0
载波
:0
碰撞
:0
发送队列长度
:1000
接收字节
:5755235 (5.7 MB)
发送字节
:176805 (176.8 KB)
eth1 Link encap:
以太网 硬件地址
74:ea:3a:6a:d6:8f
inet6
地址
: fe80::76ea:3aff:fe6a:d68f/64 Scope:Link
UP BROADCAST MULTICAST MTU:1500
跃点数
:1
接收数据包
:11503
错误
:0
丢弃
:0
过载
:0
帧数
:0


发布评论