我是新手。我正在学习使用 Ubuntu 托管服务器(我四处逛了逛,发现它最适合服务器托管)
我正在使用 Ubuntu Server 22.04 LTS、Oracle VBOX 6.1.36
我在 Vbox 中使用Bridged Adapter
,并使用 中的示例部分为我的服务器分配了静态 IP netplan.io
。我修改了/etc/netplan/00-installer-config.yaml
。但问题是,分配静态 IP 后,我失去了网络,无法下载任何内容,无法 ping 任何网站等。
设置如下:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 192.168.0.101/24
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
routes:
- to: default
via: 192.168.0.1
192.168.0.1
是我的路由器地址。在此之后,我会这样做,重新sudo reboot
启动后我ip a
会这样做ifconfig
这就是我得到的。
我试过所有教程和论坛,但都没什么用。而且大多数都是旧版本。
有人能帮忙吗?谢谢。
是否可以在 Vbox 中使用 NAT 设置服务器?(我听说使用 NAT 比桥接更安全,因为它分离了主机和虚拟机)
使用桥接适配器时,我可以从主机设备 (Windows)访问.html
文件。但使用提供IP 地址的 NAT 时,我无法访问。apache2
10.0.2.15
如果可以访问,我该如何访问?
目前我正在学习托管 nextcloud,以及托管网站。
非常感谢任何其他建议/意见。
答案1
服务器状态
您的设置显然不正确,因为该ip a
命令没有显示除 loopback lo 之外的任何活动接口。因此,服务器无法通信。enp0s3 接口具有 DOWN 标志,其地址根本没有设置。
检查
请尝试以下操作:
/etc/netplan/*.yaml
在更改文件之前,请查看文件的原始内容。如果它包含行renderer: NetworkManager
,则表示服务器正在使用 NetworkManager,您在中所做的设置/etc/netplan/xxxx.yaml
将不起作用。相反,您需要更改/etc/NetworkManager/system-connections
目录中的文件。请参阅下面的修复 NetworkManager和NetworkManager 设置。
检查网络服务状态:
sudo systemctl status systemd-networkd
sudo systemctl status network-manager
两项服务中哪一项正在运行?他们之中只有一个人应该还活着。如果没有,那么您需要激活 systemd-networkd。
sudo systemctl start systemd-networkd
当服务无法启动时,使用日志来找出其崩溃的原因。
如果启动成功并且网络正常运行,则使用该enable
子句在系统启动后使服务处于活动状态。
sudo systemctl enable systemd-networkd
修复 NetworkManager
仅当您发现network-manager
服务处于活动状态和systemd-networkd
不活动状态时才进行这些更改。
- 将服务器恢复到其原始设置
/etc/netplan/00-installer-config.yaml
以及您进行编辑的其他地方。 - 重新启动 Ubuntu 服务器。它应该从 DHCP 服务器获取地址并开始通过网络正常通信。
使用nmcli
命令。还可以查看目录中文件的内容/etc/NetworkManager/system-connections
。
如果系统使用 NetworkManager 并且接口处于活动状态,则 nmcli 响应的示例:
"Intel I211"
ethernet (igb), A8:A1:59:51:AB:CD, hw, mtu 1500
ip4 default, ip6 default
inet4 10.1.1.111/24
route4 0.0.0.0/0
route4 10.1.1.0/24
...
DNS configuration:
servers: 10.1.1.1
domains: lan
interface: eth0
/etc/NetworkManager/system-connections
来自 DHCP 服务器的动态地址目录中的设置文件内容示例:
[connection]
id=Wired_connection_1
uuid=223088bf-66e3-3bc6-a0b8-52dc3707dd07
type=ethernet
autoconnect-priority=-999
interface-name=eth0
permissions=
timestamp=1659653519
[ethernet]
mac-address-blacklist=
[ipv4]
dns-search=lan;
method=auto
...
NetworkManager 设置
您需要对 中的文件进行更改/etc/NetworkManager/system-connections
。
/etc/NetworkManager/system-connections/*.nmconnection
手动输入 IP 地址的文件内容示例:
[connection]
id=Wired_connection_1
uuid=223088bf-66e3-3bc6-a0b8-52dc3707dd07
type=ethernet
autoconnect-priority=-999
interface-name=eth0
permissions=
timestamp=1659656501
[ethernet]
mac-address-blacklist=
[ipv4]
address1=10.1.1.160/24,10.1.1.1
dns=10.1.1.1;
dns-search=lan;
ignore-auto-dns=true
method=manual