Solaris 欺骗 mac 是不可能的

Solaris 欺骗 mac 是不可能的

我需要在 ESXi VM 中运行的 Solaris 10 中伪造 MAC 地址。我需要的 MAC 超出了 vSphere 允许的范围。

因此我在 /etc/hostname.e1000g0 中添加了一个“ether”条目,因此文件显示

abchost01

以太 1:2:3:4:5:6

然后重启。令我惊恐的是,网络掩码现在是 ff000000。之前是 fffffe00。所以我添加了

网络掩码 255.255.254.0

到 /etc/hostname.e1000g0

然后重启。 ifconfig -a 乍一看没什么问题,但无法 ping 通 IP。令我惊恐的是,广播地址现在是 10.255.255.255,而不是 10.182.217.255。

在 Solaris 10 中,我该如何用配置文件设置 MAC 地址?我尝试过使用 SMF 的 rc.local 方法来启动它。使用 SMF 实在是太痛苦了。我宁愿使用配置文件来做这件事。在 Windows 和 Linux 中,我可以在 10 秒内完成这件事 - 但 Solaris 让我吃尽了苦头。请帮忙。

答案1

我之前在虚拟机中查看过这个问题。我注意到当我

hostname
ether 10:20:30:40:50:60

在 /etc/hostname.e1000g0 中,系统启动时记录了一个错误

9 月 15 日 20:10:46 主机名 svc.startd[7]: [ID 748625 daemon.error] 网络/物理:默认配置错误:已转换为维护状态(请参阅“svcs -xv”了解详情)

查看 e1000g0 接口,我们看到

e1000g0: flags=1000843<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
    inet 192.168.1.68 netmask ffffff00 broadcast 192.168.1.255
    ether 0:c:29:25:22:f8

正如你所说,这看起来很正常,但事实并非如此,UP它不会响应 ping 等。这可以解释你的恐惧!

要更改 mac 地址,你必须将主机名和以太网地址放在同一行

hostname ether 10:20:30:40:50:60

然后重启后查看 e1000g0 我们看到

e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
    inet 192.168.1.68 netmask ffffff00 broadcast 192.168.1.255
    ether 10:20:30:40:50:60

这正是你想要的。

相关内容