Linux下如何根据目的IP来获取下一跳网关的MAC,netlink可以实现么

Linux下如何根据目的IP来获取下一跳网关的MAC,netlink可以实现么,第1张

获取MAC和netlink没有关系

一开始arp表是空的 假如一台linux主机(假设为19216803)要ping一个外网的ip, 通过路由表可知这个数据包要到达的下一跳网关ip, 假设为19216801 那么, 这台linux主机就广播一个arp请求:"who has 19216801 tell 19216803" 网关接收到这个arp请求后, 回应一个arp包给这台Linux主机:"19216801 is at xxxxxxxx(MAC)", 这样, 这台Linux主机就获得了下一跳的网关了, 它会把这个arp信息缓存到arp表 它不需要知道外网ip对应的MAC, 只把这个ping的ICMP数据包发给网关 同样, 这个网关也根据路由表查找下一跳的MAC

默认网关,

/etc/sysconfig/network

添加GATEWAY=<网管IP>

或者在相应的网卡配置文件里,比如网卡eth0:

/etc/sysconfig/network-scripts/ifcfg-eth0

添加GATEWAY=<网管IP>

重启网络服务,比如service network restart

如果不行,检查你的掩码设置正确与否。

linux下设置网关步骤如下:

1、使用xshell登录我们的linux服务器,本机使用的是centos65。

2、使用route -n查看本机的路由表,看到本机没有默认路由。

3、使用ip  add查看本机地址,本机为1921681012,设置规划的网关为192168101254。

4、手动增加一条路由route add default gw 192168101254添加一条默认网关,然后route -n看到路由已经生效了。

5、使用route add命令增加只是临时生效,重启会丢失,需要写入配置文件里边,按照如下配置可永久生效。

问题1:

在linux系统里面获得网关地址没有专门的函数,可以通过查配置文件/proc/net/route来获得,没有更好的方法了,因为linux提供的源码包里面都是这么做的,因此你需要编写一段解析配置文件/proc/net/route的代码来完成

问题2:

我觉得用libnet得网关MAC应该不是个小例子,我也没有研究过,不好下结论,楼下继续

设置默认网关命令如下\x0d\route add default gw 192168101\x0d\设置特定路由网关命令如下\x0d\route add -net 192168100 netmask 2552552550 gw 192168101\x0d\route命令说明\x0d\\x0d\route命令用来显示或修改ip的路由表。\x0d\route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]\x0d\ -net :表示后面接的路由为一个网域;\x0d\ -host :表示后面接的为连接到单部主机的路由;\x0d\ netmask :与网域有关,可以设定 netmask 决定网域的大小;\x0d\ gw :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;\x0d\ dev :如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等

你的linux是如何上网的呢

如果固定IP上网,cat /etc/sysconfig/network里面gateway项

如果是dhcp上网,使用route命令,default那一行就是网关了

[root@hello ~]# route

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

192110 2552552550 U 0 0 0 eth0

16925400 25525500 U 0 0 0 eth0

default 192111 0000 UG 0 0 0 eth0

以上就是关于Linux下如何根据目的IP来获取下一跳网关的MAC,netlink可以实现么全部的内容,包括:Linux下如何根据目的IP来获取下一跳网关的MAC,netlink可以实现么、linux怎么设置网关、linux下如何设置网关等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9763205.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存