论坛风格切换切换到宽版
  • 752阅读
  • 9回复

[问题求助]iptable+MAC绑定的奇怪问题?? [复制链接]

上一主题 下一主题
离线fenglipiao.
 
发帖
2012
C币
-60501
威望
388
贡献值
1
银元
-2
铜钱
4611
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
10..74.100.36可以上网.
10..74.100.236不可以上网.

echo 1 >; /proc/sys/n.et/i.pv4/ip_forward域名
iptables -t nat -A POSTROUTI.NG -s 10.74.100..236 -o eth0 -j SN.AT --to 10.74.100.36           建材

10.74.100.236的机子把网关填为10.74.100.3.6就可以上网了.但是其它机子也填.网关为10.74.100.36. 就都可以上网了.为什么啊????.

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线huandream1.
发帖
1997
C币
-559569
威望
361
贡献值
5
银元
-1
铜钱
4513
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
网关和包转是两码事
我不赞成大家用SNAT!

离线风语.
发帖
2116
C币
-139044
威望
379
贡献值
1
银元
-2
铜钱
4703
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
这和ip mac绑定没有关系啊
而且snat也不是这样做的,不知你这样做的用意在哪里如果要ip mac绑定,可以有两种办法
1、编辑/etc/ethers文件大致如下:
192。168。1。1 00:e0:1e:9e:af:50
文件内容只是举个例子,然后输入命令arp -f这样就绑定好了
还有一种办法是使用iptables
iptables -A FORWARD -s 192.168.1.1 -m mac --mac-source 00:e0:1e:9e:af:50 -j ACCEPT

发帖
1986
C币
-605149
威望
377
贡献值
4
银元
-2
铜钱
4410
人人网人气币
0
只看该作者 地板  发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
我也用了arp -f  作了绑定,其它机了是PING不通10.74.100.36。但是还是能上网?

离线initiallong.
发帖
2056
C币
-152475
威望
366
贡献值
1
银元
0
铜钱
4560
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
[quote]原帖由 "panwj"]我也用了arp -f  作了绑定,其它机了是PING不通10.74.100.36。但是还是能上网?[/quote 发表:


不可能的。

绑定后就不能通信了,怎么还能上网呢。

离线54nb.
发帖
2136
C币
-140107
威望
384
贡献值
1
银元
-4
铜钱
4658
人人网人气币
0
只看该作者 5楼 发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
你只是绑定了该绑定的,没限制不该绑定的

看一下我的《基于路由策略的IP地址控制》吧,看其中arp绑定那部分,看完你就明白了

离线加子里.
发帖
2086
C币
-152245
威望
383
贡献值
1
银元
-5
铜钱
4676
人人网人气币
0
只看该作者 6楼 发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
vi /etc/ethers
10.74.100.1            00:00:00:00:00:10
10.74.100.2             00:00:00:00:00:10
10.74.100.3             00:00:00:00:00:10
10.74.100.4             00:00:00:00:00:10
10.74.100.5             00:00:00:00:00:10
10.74.100.6             00:00:00:00:00:10
....................
全绑定了吧?

离线seaspirit.
发帖
2029
C币
-60633
威望
359
贡献值
1
银元
-2
铜钱
4429
人人网人气币
0
只看该作者 7楼 发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
你还是看看我的帖子吧,看完就明白了

发帖
2081
C币
-60611
威望
377
贡献值
1
银元
-3
铜钱
4767
人人网人气币
0
只看该作者 8楼 发表于: 2010-04-13
我知道原因了,

C:\Documents and Settings\Administrator>;tracert  www.sina.com

Tracing route to libra.sina.com.cn [61.135.153.1
over a maximum of 30 hops:

  1   <10 ms   <10 ms   <10 ms  10.74.100.36其它机子在这处不能通过.但它通过10.74.100.36的网关走出去了
  2   <10 ms   <10 ms   <10 ms  10.74.100.100
  3   <10 ms   <10 ms    15 ms  211.90.109.65
  4    31 ms    16 ms   <10 ms

离线dengxin.
发帖
1917
C币
-263183
威望
354
贡献值
1
银元
-4
铜钱
4219
人人网人气币
0
只看该作者 9楼 发表于: 2010-04-13
Re:iptable MAC绑定的奇怪问题??
人家今年才初中毕业。哪看得明白?

http://www.chinaunix.net 作者:platinum  发表于:2004-04-14 16:55:10

基于路由策略的IP地址控制

作者:白金 网名:platinum(chinaunix) 超超白金(白金论坛)  
欢迎转载,转载请保留上述信息  
===========================================================================

最近做了一套路由策略,觉得LINUX真的太强大了!于是心潮澎湃,写了这个文档!!!

一、背景描述
如图,LINUX是一台网关服务器,内有3块网卡
eth1绑定172.17.0.0/16的IP,该网段IP可以通过172.17.1.1上网
eth0绑定192.168.10.0/24的IP,该网段IP可以通过192.168.10.1上网
eth2绑定192.168.1.1,是内网用户的网关

二、需求分析
内网用户应该走172.17.1.1这个路由上网
但由于工作需要,部分用户应该有访问图中“专用网络”的权限
也就是说,应该走192.168.10.1这个路由

另外一点,所有人应该可以访问FTP服务器,这个服务器的IP是192.168.10.96
也就是说,走172.17.1.1路由的人,也应该能访问192.168.10.96,且可以上网

三、解决方案
要解决这个问题,用到了一下几个命令,具体使用方法需要另查资料
ip route
ip rule
arp
注:关于ip命令的用法,请查阅ip中文手册,www.google.com上有

1、绑定IP
ifconfig eth1 172.17.3.x netmask 255.255.0.0
ifconfig eth0 192.168.10.2 netmask 255.255.255.0
ifconfig eth2 192.168.1.1 netmask 255.255.255.0
然后分别修改/etc/sysconfig/network-script/ifcfg-ethx文件,以使计算机启动自动设置IP地址

2、创建特殊路由表
vi /etc/iproute2/rt_table
#

# reserved values

#

255     local

254     main

253     default

0       unspec



200     NET10

#

# local

#

#1      inr.ruhep
复制代码
上面那个200 NET10为新添加,自定义编号为200,名字为NET10

3、向NET10路由中添加它自己的默认路由
ip route add default via 192.168.10.1 table NET10
复制代码
注意,这个table NET10一定不要忘了写,否则写到了主路由表中

4、创建特殊路由规则
用ip rule可以看到计算机当前的路由规则


QUOTE:0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default

可以看到,规则中走了3个路由表,local、main、default
我们平常用route看到的,实际是路由表main
这些规则是按序号大小顺序走的,一个不同,则走下一个,知道通路或走完为止

开始添加我们自己的路由NET10到路由表中
ip rule add from 192.168.1.222 pref 10000 table NET10
复制代码
这个意思是说,如果来自IP地址为192.168.1.222的访问,则启用NET10的路由表中的路由规则
而NET10的路由规则是什么呢?上面已经设置了,走的是192.168.10.1的网段
接下来,使LINUX可以NAT(这里不再细说HOW TO了)

5、让所有人可以访问192.168.10.xx(这个IP不便说出来)
因为其余人都走了172.17.1.1这个路由,所以他们是无法访问192.168.10.xx的
怎么才能实现呢?再添加个策略就可以了!
ip rule add to 192.168.10.xx pref 10001 table NET10
复制代码
这句话的意思是说,所有人,如果目的IP是192.168.10.xx,则临时使用NET10的路由表
这样做,安全会不会有安全问题呢?路由变了,他们会不会访问到专用网络呢?
不会的,因为路由规则是to 192.168.10.xx,也就是目标是96时,才该路由的,访问别的网站还是走原来的路由。
如果说访问到专用网络的机器,也就只有10.xx这一台而已。
这里,我们还可以做一个小技巧,不告诉别人192.168.10.xx的地址,只告诉他们网关192.168.1.1上有这个服务
iptables -t nat -A PREROUTING -d 192.168.1.1/32 --dport 21 -j DNAT --to 192.168.10.xx:21

6、防止其他人篡改IP地址而获得特殊权限
arp有个静态功能CM,不是C,大家可能知道
如果给一个IP地址强行绑定一个非他自己的MAC,会怎么样呢?双方会话将会失败!
好,我们来利用这一点!


下面的明白
首先,我写了一个文件iproute.c
#include <stdlib.h>;

#include <stdio.h>;

main ()

{

        int i;

        for(i=2;i<255;i++)

                printf("192.168.1.%d\t\t00:00:00:00:00:00\n",i);

}
复制代码
gcc iproute.c -o iproute
将编译出一个可执行文件
注:不应该包括主机IP地址本身,所以从2循环到254(255是广播)

其次,生成一个C的IP地址和全为00的MAC地址
./iproute >; /etc/ethers
复制代码

再次,修改IP-MAC匹配列表
vi /etc/ethers
具体怎么该我就不用细说了,相信大家都会

最后,做静态IP-MAC绑定
arp -f
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个