前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu 20.04 设置静态IP

Ubuntu 20.04 设置静态IP

作者头像
为为为什么
发布2022-08-06 13:21:59
2.2K0
发布2022-08-06 13:21:59
举报
文章被收录于专栏:又见苍岚又见苍岚

服务器环境需要有静态的 IP 用于SSH登陆,本文记录 ubuntu 系统下设置静态IP的方法。

解决方案

  • 确定上网使用的网卡
  • 修改 NetworkManager 配置文件内容
确定网卡
  • ifconfig 命令可以查看当前网络配置
代码语言:javascript
复制
$ ifconfig
enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.4  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::7285:c2ff:fe80:45d8  prefixlen 64  scopeid 0x20<link>
        inet6 2409:8a1e:8fc7:3bc0:7285:c2ff:fe80:45d8  prefixlen 64  scopeid 0x0<global>
        ether 70:85:c2:80:45:d8  txqueuelen 1000  (以太网)
        RX packets 8721  bytes 6897773 (6.8 MB)
        RX errors 0  dropped 1047  overruns 0  frame 0
        TX packets 6367  bytes 1362777 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (本地环回)
        RX packets 961  bytes 94772 (94.7 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 961  bytes 94772 (94.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

  • 其中 enp1s0 为网卡的 logical name
  • 或使用 sudo lshw -C network 命令
代码语言:javascript
复制
$ sudo lshw -C network 
  *-network                 
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:01:00.0
       logical name: enp1s0
       version: 11
       serial: 70:85:c2:80:45:d8
       size: 1Gbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=5.11.0-40-generic duplex=full firmware=rtl8168g-2_0.0.1 02/06/13 ip=192.168.1.222 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
       resources: irq:22 ioport:e000(size=256) memory:91304000-91304fff memory:91300000-91303fff
  *-network DISABLED
       description: Ethernet interface
       physical id: 1
       logical name: virbr0-nic
       serial: 52:54:00:5a:47:3b
       size: 10Mbit/s
       capabilities: ethernet physical
       configuration: autonegotiation=off broadcast=yes driver=tun driverversion=1.6 duplex=full link=no multicast=yes port=twisted pair speed=10Mbit/s

  • logical name 为网卡名

这里我的网卡为 enp1s0

方法一
修改 NetworkManager 配置
  • 编辑/etc/netplan/**.yaml,不同电脑配置文件名不同,我的是01-network-manager-all.yaml
  • 编辑文件并为 enp1s0 添加配置内容
代码语言:javascript
复制
# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    enp1s0:
      addresses:
        - 192.168.1.222/24
      gateway4: 192.168.1.1
      nameservers:
        addresses: [114.114.114.114]
                                                      

意思是在以太网接口enp1s0下,添加ipv4地址192.168.1.222,网关192.168.1.1,dsn服务器114.114.114.114。dsn服务器是必须要填的,但是每一行的缩进不是严格要求的.

应用修改
代码语言:javascript
复制
sudo netplan apply

方法二

有时 netplan 文件夹下没有文件,可以采用如下方法

  • 需要编辑2个文件
    • /etc/network/interfaces(配置IP和网关)
    • /etc/resolv.conf(配置DNS服务器)
  • 修改 /etc/network/interfaces 文件
代码语言:javascript
复制
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp1s0
allow-hotplug enp1s0
# iface enp1s0 inet dhcp
iface enp1s0 inet static
address 192.168.1.111
netmask 255.255.255.0
gateway 192.168.1.1
broadcast 192.168.1.255

# This is an autoconfigured IPv6 interface
iface enp1s0 inet6 auto
  • 其中

配置

含义

auto enp1s0

开机自动连接网络

iface enp1s0 inet static

设置静态IP

iface enp1s0 inet dhcp

dhcp 自动获取IP

address 192.168.1.111

静态 IPv4地址

netmask 255.255.255.0

子网掩码

gateway 192.168.1.1

网关

broadcast 192.168.1.255

广播地址(也可以不写)

  • 配置 /etc/resolv.conf 文件,设置 dns
代码语言:javascript
复制
nameserver 192.168.1.1
nameserver 114.114.114.114

  • 重启网络(debian 系统)
代码语言:javascript
复制
service networking restart

测试
代码语言:javascript
复制
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 70:85:c2:80:45:d8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.222/24 brd 192.168.1.255 scope global noprefixroute enp1s0
       valid_lft forever preferred_lft forever
    inet6 2409:8a1e:8fc7:3bc0:7285:c2ff:fe80:45d8/64 scope global dynamic mngtmpaddr 
       valid_lft 240888sec preferred_lft 154488sec
    inet6 fe80::7285:c2ff:fe80:45d8/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
  • 可以看到 inet 192.168.1.222/24 表明修改静态IP成功

参考资料

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021年11月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 解决方案
    • 确定网卡
      • 方法一
        • 修改 NetworkManager 配置
        • 应用修改
      • 方法二
        • 测试
        • 参考资料
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档