eth02k2p
① linux如何配置NAT
1. 配置IP地址
1.1 正确配置学校分配的IP使能正常上网
1) 按学校分配的IP地址配置好Linux主机
[~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
| DEVICE=eth0 |
| BOOTPROTO=none |
| HWADDR=00:1E:90:13:E0:25 |
| IPADDR=10.3.10.19 |
| NETMASK=255.255.255.0 |
| GATEWAY=10.3.10.254 |
| ONBOOT=yes |
| TYPE=Ethernet |
| DNS1=211.64.120.2 |
| DEFROUTE=yes |
| DOMAIN=168.96.1.1 |
2) 重起网卡
[~]# servie network restart
note: 经过以上的配置, Linux主机应该能够正常上网了!
1.2 新增eth0别名设备eth0:0
[~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0:0
| # eth0:0 必须要用''括起来: 'eth0:0' |
| DEVICE='eth0:0' |
| ONBOOT=yes |
| BOOTPROTO=static |
| IPADDR=192.168.50.1 |
| NETMASK=255.255.255.0 |
| USERCTL=no |
1.3 配置后 查看一下是否配置成功:
[~]# ifconfig
| eth0 Link encap:Ethernet HWaddr 00:1E:90:13:E0:25 |
| inet addr:10.3.10.19 Bcast:10.3.10.255 Mask:255.255.255.0 |
| inet6 addr: fe80::21e:90ff:fe13:e025/64 Scope:Link |
| UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 |
| RX packets:187685 errors:0 dropped:0 overruns:0 frame:0 |
| TX packets:137327 errors:0 dropped:0 overruns:0 carrier:0 |
| collisions:0 txqueuelen:1000 |
| RX bytes:134816893 (128.5 MiB) TX bytes:56066393 (53.4 MiB) |
| Interrupt:27 Base address:0xa000 |
| eth0:0 Link encap:Ethernet HWaddr 00:1E:90:13:E0:25 |
| inet addr:192.168.50.1 Bcast:192.168.50.255 Mask:255.255.255.0 |
| UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 |
| Interrupt:27 Base address:0xa000 |
2. 配置路由
由于在配置网卡接口时, 已自动配置一定的路由, 所以我们只需查看一下其信息, 验证其
是否已经被正确配置:
[root ~]$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
10.3.10.0 * 255.255.255.0 U 1 0 0 eth0
link-local * 255.255.0.0 U 1002 0 0 eth0
default 10.3.10.254 0.0.0.0 UG 0 0 0 eth0
3. 配置NAT
1) 新建nat.sh脚本文件并保存在 /usr/local/nat/ 目录下:
[~]# cat /usr/local/nat/nat.sh
| #!/bin/bash |
| # 0. 设定你的参数值 |
| EXIF='eth0' # 这个是对外的网卡接口, 可能是'ppp0'等 |
| EXNET='192.168.50.0/24' # 这个是对内的网段 |
| # 底下如无需要, 请不要改动了! |
| # 1. 启动routing等 |
| echo 1 > /proc/sys/net/ipv4/ip_forward |
| /sbin/iptables -F |
| /sbin/iptables -X |
| /sbin/iptables -Z |
| /sbin/iptables -F -t nat |
| /sbin/iptables -X -t nat |
| /sbin/iptables -Z -t nat |
| /sbin/iptables -P INPUT ACCEPT |
| /sbin/iptables -P OUTPUT ACCEPT |
| /sbin/iptables -P FORWARD ACCEPT |
| /sbin/iptables -t nat -P PREROUTING ACCEPT |
| /sbin/iptables -t nat -P POSTROUTING ACCEPT |
| /sbin/iptables -t nat -P OUTPUT ACCEPT |
| # 2. 载入模组 |
| /sbin/modprobe ip_tables 2> /dev/null |
| /sbin/modprobe ip_nat_ftp 2> /dev/null |
| /sbin/modprobe ip_nat_irc 2> /dev/null |
| /sbin/modprobe ip_conntrack 2> /dev/null |
| /sbin/modprobe ip_conntrack_ftp 2> /dev/null |
| /sbin/modprobe ip_conntrack_irc 2> /dev/null |
| # 3. 启动ip伪装 |
| /sbin/iptables -t nat -A POSTROUTING -o $EXIF -s $EXNET -j MASQUERADE |
2) 增加可执行权限
[~]# chmod +x /usr/local/nat/nat.sh
4. 大功告成
1) Linux主机配置完成, 现在只需重新启动一下刚才的配置:
[~]# servie network restart
[~]# /usr/local/nat/nat.sh
2) 为了使得开机即可运行, 可在 /etc/rc.d/rc.local 文件加入相应的命令:
[~]# echo "/usr/local/nat/nat.sh" >> /etc/rc.d/rc.local
5. 配置客户机(可以是windows或linux等其它系统)
1. network 设定需要为: 192.168.50.0
2. broadcast 设定需要为: 192.168.50.255
3. netmask 设定需要为 255.255.255.0
4. IP 设定需要为 192.168.50.1 ~ 192.168.50.254 之一, 且『不能重复』
5. Gateway 或者要设定为你的 Linux 的对内 IP , 以我的例子来说, 就是
192.168.50.1
6. DNS 的设定: 这个最容易出错了, DNS 设定需要是 ISP 给你的 DNS
IP, 如果不知道的话, 可以填入 168.95.1.1 或者是
139.175.10.20 这一个 SeedNet 的 DNS 即可!千万不要设定为 192.168.1.2
② linux下如何区分eth0,eth1,eth2,eth3
ethtool -p eth0
回车后与eth0 相对应的网卡接口旁边的指示灯就会闪烁,这样你就能很快确定eth0 网口的位置(按下Ctrl+C 结束命令,停止闪烁)
同样确定eth1、eth2.。。。
③ 怎样改变eth0,eth1,eth2,eth3所对应的物理网卡
你好, AC地址也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。IP地址与MAC地址在计算机里都是以二进制表示的,IP地址是32位的,而MAC地址则是48位的。MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20:0A:8C:6D就是一个MAC地址,其中前6位16进制数08:00:20代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配,而后3位16进制数0A:8C:6D代表该制造商所制造的某个网络产品(如网卡)的系列号。只要你不去更改自己的MAC地址,那么你的MAC地址在世界是惟一的。
希望能帮到你。
④ 有一台linux服务器有两个网卡 eth0为外网ip eth1 ip为192.168.10.1网段的ip 网关192.168.10.254 接下面补充
service iptables stop //注1
echo "1" >> /proc/sys/net/ipv4/ip_forward //注2
modprobe ip_nat_ftp
iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -o eth0 -j SNAT --to 192.168.10.10
也可以可以把上面的内容粘贴到文件里,用sh filename来执行,就相当于DOS下的批处理文件。
每次重启计算机都需要重新执行。
注1:RHEL/CENTOS/FC系列专用命令,如果你的发行版不是,那么用下面的命令代替:
iptables -F INPUT
iptables -F FORWARD
iptables -t nat -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
注2:这行是临时有效,重启会丢失,所以要写到配置文件里,如果不写配置文件里,可用其他方式:
编辑/etc/sysctl.conf
net.ipv4.ip_forward = 1
然后执行sysctl -p
⑤ ubuntu中如何提取eth0的IP和子网掩码
$ ifconfig eth0 | sed -r -n 's/.*inet addr:(\S+).*Mask:(.*)/\1 \2/p'
⑥ 如何快速区分eth0 eth1
ethtool -p eth0
回车后与eth0 相对应的网卡接口旁边的指示灯就会闪烁,
这样你就能很快确定eth0 网口的位置(按下Ctrl+C 结束命令,停止闪烁)
同样确定eth1、eth2.。。。
⑦ linux iptables ftp设置
这些规则很罗嗦,最重要的是概念不清,加了基本等于没加,该防护的都没防护到,反而加重系统负担。
OUTPUT链默认就是允许的,如果这个主机是你管理并可控的,你为何不让本机可以访问外部所有的地址?非得加那么多啰嗦的脚本?
一、本机做NAT,让内部主机访问外部FTP服务器的做法
1、清除所有旧有的规则
service iptables stop //RHEL才有的命令
2、加载让NAT内部主机访问外部FTP的模块:
modeprobe ip_nat_ftp
//从RHEL4开始,该模块会自动在系统加载ip_nat/ip_conntrack/ip_tables/ip_conntrack_ftp/ip_conntrack_irc等多个模块
3、打开linux的转发开关
echo "1" /proc/sys/net/ipv4/ip_forward
4、开启NAT
iptables -t nat -A POSTROUTING -s $INT_NET -j SNAT --to $FW_IP
这样,内部主机就可以访问外部的FTP服务了,你不需要知道对方是主动还是被动模式
二、如果本机做FTP被访问
service iptables stop
modprobe ip_conntrack_irc //如果端口不是21,后面还需要加上端口号。如果是21,这步也可以用modprobe ip_nat_ftp,把其他模块也加载上。
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
当INPUT的默认策略是DROP时,RELATED模块用途就是为本机的FTP服务打开衍生端口,ESTABLISHED是允许回包。
iptables -A INPUT -p tcp --dport 21 -m state --state NEW -j ACCEPT //开放21端口
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT //开放管理端口
iptables -P INPUT DROP //默认策略拒绝
⑧ linux/centos如何查看网卡是100M还是1000M
可以使用ethtool命令进行查看,使用格式ethtool 网络接口名。
以下为例,eth0为网卡名,使用ifconfig查看当前使用的网卡。
Speed表示网卡带宽,Duplex表示工作模式,Supported link modes表示支持的工作模式。
(8)eth02k2p扩展阅读:
ethtool命令的其它用法:
1、查询网络端口位置:ethtool -p ethX
这个命令多用于管理多网口的服务器主机,由于背板的网络端口数量大,有时候不知道那个物理端口对应eth0或其他设备号,我们就可以使用这个命令来查询。
用法:ethtool -p eth0
效果:设备号eth0对应的物理端口的两个指示灯会闪烁
2、修改网络端口速率:ethtool -s
这个命令多用于手工设置网络速率,一般千兆网卡支持10|100|1000三个速率,单位是Mbps。
用法:ethtool -s eth0 speed 1000 plex full autoneg off
效果:将设备号eth0对应的物理端口设置为速率为1000Mbps,全双工工作模式,同时关闭自动协商。