RTNETLINK answers: Invalid argument RTNETLINK answers: File exists错误解决

问题产生原因: 因为需求,原来用tc做过限速 

原命令如下:

ifb模块手动加载
modprobe ifb   
启动虚拟设备ifb0      
ip link set dev ifb0 up
tc qdisc add dev em1 ingress
使用ifb0做输入方向的重定向
tc filter add dev em1 parent ffff: protocol ip u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ifb0
tc qdisc add dev ifb0 root handle 1: htb default 1
tc class add dev ifb0 parent 1: classid 1:1 htb rate 1000kbit ceil 1000kbit burst 100k
使用ifb0做输出方向的重定向
tc filter add dev ifb0 parent 1: prio 1 protocol ip u32 match ip dst 36.110.160.37 match ip dport 80 0xffff flowid 1:1
tc filter add dev ifb0 parent 1: prio 1 protocol ip u32 match ip dst 111.206.217.37 match ip dport 80 0xffff flowid 1:1
查看
tc -s -d filter show dev ifb0
tc -s -d class show dev ifb0
tc -s -d qdisc show dev ifb0

更改

tc class change dev ifb0 parent 1: classid 1:1 htb rate 35kbit ceil 35kbit burst 3k

删除
tc qdisc del dev em1 root parent
tc class del dev ifb0 parent

tc class del dev ifb0 

各命令均有效,执行无错误。

但是,我发现一个有效且简单的限速软件 wondershaper

   https://blog.csdn.net/zhangxueleishamo/article/details/79924837

事前没有进行原tc限速删除,直接rpm安装了该包,安装完后再执行tc 删除原限速,出现错误为:

RTNETLINK answers: Invalid argument

百度得 https://blog.csdn.net/zahuopuboss/article/details/8678570 但是没有解决

删除软件包也没有解决

百度得https://www.linuxidc.com/Linux/2014-01/95253.htm 

编辑/etc/udev/rules.d/70-persistent-net.rules

找到含NAME="em1"的那行直接删除或如我一样#注释,如下:

# PCI device 0x14e4:0x163b (bnx2) (custom name provided by external tool)

#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:26:b9:47:f2:8e", ATTR{type}=="1", KERNEL=="eth*", NAME="em1"

然后重启机器,解决该问题。

错误RTNETLINK answers: File exists

http://www.bubuko.com/infodetail-1491579.html

 (1)分析该问题的成因:

/etc/init.d/network

 /etc/init.d/NetworkManager这两个服务有冲突。

从根本上说是NetworkMaganager(NM)的带来的冲突,停用NetworkManager即可解决。重启即可。

      (2)解决问题:

既然不是操作系统和网卡配置的问题解决问题的就简单许多。利用chkconfig查看下

  [root@localhost ~]# chkconfig --list network

   network         0:off  1:off  2:on  3:on  4;on  5:on  6:off
  [root@localhost ~]# chkconfig --list NetworkManager
   NetworkManager          0:off  1:off  2:off 3:on  4:on  5:off  6:off

  [root@localhost ~]# service NetworkManager stop

   然后就OK了.






阅读更多
换一批

没有更多推荐了,返回首页