openEuler 知:ip addr 查不到 ip 的解决方法

通过 VMware Workstation 安装 openEuler 虚拟机后,通过 ip addr 查不到 ip,如下所示:
在这里插入图片描述
备注:默认没有安装 ifconfig 命令。

解决方法:

  1. 进入 /etc/sysconfig/network-scripts 目录,在文件路径下找到 ifcfg-ens33 文件然后进行修改:
    将 ONBOOT 的值改为 yes,ONBOOT 的意思是,开机时是否启动,修改后如下所示:
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=dhcp
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=ens33
    UUID=2d08599f-4ea5-404c-aaef-e59c907a11f7
    DEVICE=ens33
    ONBOOT=yes
    
  2. 重启网络服务
    systemctl restart NetworkManager
    
    ifdown ens33
    ifup ens33
    
  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
`IP4_ADDR` 是一个用于初始化和设置 IPv4 地址的宏定义。在实际的网络编程中,IPv4 地址通常被表示为一个 32 位的无符号整数,即 4 个字节的二进制数。而 `IP4_ADDR` 这个宏定义则可以方便地将这个 32 位的无符号整数拆分成 4 个字节,从而初始化和设置 IPv4 地址。 `IP4_ADDR` 宏定义的语法如下: ```c #define IP4_ADDR(ipaddr, a, b, c, d) \ ((ipaddr)->addr = ((uint32_t)(a & 0xff) << 24) | \ ((uint32_t)(b & 0xff) << 16) | \ ((uint32_t)(c & 0xff) << 8) | \ (uint32_t)(d & 0xff)) ``` 其中,`ipaddr` 表示一个指向 `ip4_addr_t` 类型的指针,`a`、`b`、`c`、`d` 分别表示 IPv4 地址的 4 个字节,可以是任意整数。该宏定义通过位运算的方式将这 4 个字节组合成一个 32 位的无符号整数,最终将 `ipaddr` 指向的内存空间赋值为这个无符号整数,从而完成 IPv4 地址的初始化和设置。 例如,要将 IPv4 地址 192.168.0.1 赋值给 `ipaddr` 指向的内存空间,可以使用以下代码: ```c ip4_addr_t ipaddr; IP4_ADDR(&ipaddr, 192, 168, 0, 1); ``` 其中 `&ipaddr` 表示 `ipaddr` 的地址,即指向 `ip4_addr_t` 类型的指针,传递给 `IP4_ADDR` 宏定义后,会被赋值为 192.168.0.1 对应的 32 位无符号整数。 总之,`IP4_ADDR` 宏定义是一个方便快捷的方法,可以用于将 IPv4 地址的 4 个字节拆分成一个 32 位无符号整数,并将其赋值给一个指定的内存空间,从而实现 IPv4 地址的初始化和设置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值