如何让我的 Linux 机器动态广播其 IP 地址?

如何让我的 Linux 机器动态广播其 IP 地址?

我的 Linux 台式机运行的是 Kubuntu 16.04 Desktop LTS(基于 Debian 的 linux);运行 KDE Plasma 桌面。为了连接到 LAN,我只需配置 WiFi GUI(由于构建原因,无法选择电缆),将其指向路由器并填写密码。工作正常,没有问题。

但是,分配给我的机器的 IP 地址是通过路由器上运行的 DHCP 服务器传递的。目前是这样192.168.0.34,但它每天都会发生变化,具体取决于我是否关闭了机器、路由器是否重新通电等。

路由器中的“DHCP 保留”下有一些选项,允许我根据 WiFi 卡的 MAC 地址保留固定的 IP 地址。

我有一台 MacBook,我喜欢通过 SSH 连接到 Linux 机器,这样我就可以在房子和花园的任何地方工作。通常我会更改/etc/hostsMacBook 上的文件并进行关联mylinuxbox 192.168.0.34

如果不使用 DHCP 预留,我将必须不断更改文件/etc/hosts以匹配当前 DHCP 分配的 IP 地址。

有没有办法让Linux机器在局域网上广播它的IP地址?

如果是这样,这是如何完成的?这是一种安全且可接受的做法吗?

使用 DHCP 保留修复路由器上的 IP 是否是更好的解决方案?

答案1

您可以尝试安装 Avahi,它是 Zeroconf(在 Apple Mac/iOS 环境中称为 Bonjour)的 Linux 实现,并将其设置为将您的主机广告为<主机名>.local

所需要做的就是安装以下软件包:

sudo apt-get install avahi-daemon avahi-dnsconfd avahi-discover avahi-utils libnss-mdns

您可以在以下位置找到更多详细信息:https://askubuntu.com/questions/460371/trouble-using-ssh-and-avahi

答案2

您可以使用阿瓦希。

确保 avahi 正在运行:

sudo 服务 avahi 守护进程状态

如果它没有运行启动它:

sudo 服务 avahi 守护进程启动

然后你可以在使用 ssh 时将你的 ip 替换为 host-name.local 。

host-name 是您的主机名

答案3

首先,为您的主要设备设置静态 IP 地址是一个明智的想法,如果您正在运行需要端口转发的服务器,则必须这样做。其次,您应该能够在大多数 Linux/Unix 操作系统上直接使用主机名填写 IP 地址(不使用 /etc/hosts)。ssh mylinuxbox当 mylinuxbox 是远程计算机主机名时尝试使用。

相关内容