如题所述
ifconfig 看到的是当前系统网络的实际使用配置情况
这种配置可以用ifconfig 实时更改,但重启系统后就失效了
hostname -i 是读取/etc/hosts文件来确认你的hostname对应的IP地址,这个结果可能不是当前系统网络的实际配置(因为ifconfig命令配置的实际网络环境不更改/etc/hosts文件中的配置),但如果你重启系统,系统初始IP的配置一定是用/etc/hosts来配置网络的。
比如:
你的/etc/hosts中配置 APPLE 192.168.0.1
那你刚启动系统时,你用ifconfig和hostname -i看到的系统IP都是192.168.0.1
这时如果你用ifconfig 命令更改了网络地址为:192.168.0.2
那么你的ifconfig和hostname -i看到的就不同了
ifconfig看到的是192.168.0.2
hostname -i 看到的是192.168.0.1
这时你重启系统再看
ifconfig和hostname -i看到的系统IP又都是192.168.0.1,手动用ifconfig配置的临时IP设置在重启时失效了
这种配置可以用ifconfig 实时更改,但重启系统后就失效了
hostname -i 是读取/etc/hosts文件来确认你的hostname对应的IP地址,这个结果可能不是当前系统网络的实际配置(因为ifconfig命令配置的实际网络环境不更改/etc/hosts文件中的配置),但如果你重启系统,系统初始IP的配置一定是用/etc/hosts来配置网络的。
比如:
你的/etc/hosts中配置 APPLE 192.168.0.1
那你刚启动系统时,你用ifconfig和hostname -i看到的系统IP都是192.168.0.1
这时如果你用ifconfig 命令更改了网络地址为:192.168.0.2
那么你的ifconfig和hostname -i看到的就不同了
ifconfig看到的是192.168.0.2
hostname -i 看到的是192.168.0.1
这时你重启系统再看
ifconfig和hostname -i看到的系统IP又都是192.168.0.1,手动用ifconfig配置的临时IP设置在重启时失效了
温馨提示:答案为网友推荐,仅供参考