行動開發機的本地域名

行動開發機的本地域名

我想在我的筆記型電腦上建立本地 kubernetes (minikube) 和 glusterfs 設置,當我移動位置時,它們將繼續工作。

這樣做的問題是設定的某些方面需要使用 IP 位址/可解析的網域名稱。 minikube 設定會忽略我的/etc/hosts,並且每個位置都會為我的機器提供不同的IP 位址,因此對IP 位址進行硬編碼既煩人又耗時,因為我必須拆除、編輯,然後重新建立設置。

我的第一個想法是在本地建立一個像 BIND 這樣的 DNS 伺服器,它會傳回機器的 IP 位址,但我找不到任何關於如何返回目前機器的 IP 位址的資訊。

任何人都知道如何執行此操作或提供相同功能的替代設定嗎?

提前致謝。

答案1

感謝弗蘭克·托馬斯的提示,我最終找到了一個粗略的方法來做到這一點。

我討厭 BASH 腳本,而且很可能還有其他問題,所以如果有人有更好的方法來做到這一點,請務必添加評論,建議如何改進它,我會更新它。

對於 ubuntu 16.04,我在 /etc/network/if-up.d 中建立了一個名為 addip 的文件,其中包含以下內容:

#!/bin/sh

set -e

ADDITIONAL_IPADDR="10.0.0.111/24"
PREFERRED_INTERFACE="wlp4s0"

# Description:      Add ip address to allow for local services on a machine that's
#                       assigned an ip address by dhcp over a wifi nic
if [ $IFACE != $PREFERRED_INTERFACE ] || [ $ADDRFAM != inet ]; then
    exit 0
fi

if [ -x /bin/ip ] ; then
    # ip already present?
    ip addr show | grep -q "$ADDITIONAL_IPADDR[[:space:]]" && exit 0
    /sbin/ip addr add $ADDITIONAL_IPADDR dev $PREFERRED_INTERFACE
fi

您可能想要變更 ADDITIONAL_IPADDR 和 PREFERRED_INTERFACE 的值。

然後,您可以設定首選 DNS 伺服器以傳回您在 ADDITIONAL_IPADDR 中設定的 IP 位址。

相關內容