2003双网卡怎么配置DHCP 怎么设置共享上网,公司是固定IP

2003双网卡怎么配置DHCP 怎么设置共享上网,公司是固定IP,第1张

很简单,方法如下:

1.把两张网卡分别设置为两个不同段,一个是外网IP用公司的固定IP,一个是内网IP用私有IP段 如192.168.1.254

2.在DHCP服务器上设置地址池 地址池IP范围要与你内网IP同网段, 网关设置为内网卡的IP,DNS设置为相应的地址

3.内网卡接到公司局域网交换机上,外网卡接外线就可以了

如果还有不明白的可以问我

只保留VMnet8,网络又是可行的,由此考虑到可能是网卡优先级的配置问题。

需求

首先来说一下我们的需求:

1、一台装有Ubuntu20.04 server系统的电脑

2、一台Ubuntu server系统的电脑(该电脑上Ubuntu系统版本任意)

3、装有Ubuntu20.04 server系统的电脑上有一个无线网卡,一个有限网卡,我们想让该电脑的无线网卡连接外网,使用网线连接到另一台电脑,使得另一台电脑可以上网。

Ubuntu20.04 server系统的配置

1、配置网络信息

从网上搜集了很长时间,很多都是修改/etc/network/interfaces文件,这种方式在Ubuntu17之后就不适用了,之后的系统都使用netplan来管理网络,因此我们要修改的是/etc/netplan目录下以.yaml为后缀的文件,以下内容为我系统中的配置

network: renderer: networkd # ethernets: # 有线配置 enx00e04c00f946: #指定需配置网络接口的名称 dhcp4: true #是否打开 IPv4 的 dhcp。 addresses: [192.168.10.1/24] #定义网络接口的静态 IP 地址 wifis: #无线配置 wlan0: #无线网络接口名称 dhcp4: true #是否打开IPV4的dhcp access-points: "TP-LINK": #连接的无线的名称 password: "123123123" #连接的无线的密码 version: 2

我们在配置网络之前可以使用ifconfig命令来查看一下网卡名称

配置完成后,我们可以使用以下命令来进行启动

netplan apply

2、开启路由转发功能

Linux系统本身就有IP数据包转发的功能,但是默认情况下是关闭的,你需要通过修改配置文件来启动这个功能,修改/etc/sysctl.conf文件,将net.ipv4.ip_forward=1前面的注释去掉。

3、添加路由表使得两个网卡之间可以通信

依次在命令行中执行以下命令

iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE iptables -A FORWARD -i wlan0 -o enx00e04c00f946 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i wlan0 -o enx00e04c00f946 -j ACCEPT

接下来就是要保存这些规则

iptables-save >/etc/iptables.rules

另一台电脑网络配置

相比较而言,这一台电脑的网络配置就简单多了,把有线网卡也设置成和上一台电脑有限网卡处于同一网络的静态ip就可以,如何设置静态ip在第二部分已经讲了,这里就不多做介绍了。

结果

这样我们就可以进行访问了哟!

我们ping一下无线所在的网关,可以看到,已经通了

我又尝试ping了一下www.baidu.com

但是没有任何反应,这种情况一般是未配置dns,使用8.8.8.8或114.114.114.114或其他。

我们只需要在/etc/resolve.conf文件中加入下面这句话即可,加入dns

nameserver 8.8.8.8

优化

这样配置Ubuntu20.04网络信息后,路由表规则虽然保存下来,但是每次开机后需要自己手动重启,我想让它开机时自动启动,就进行了如下操作

1、创建rc.local文件

由于Ubuntu20.04的/etc路径下并没有rc.local文件,我们需要自己新建该文件,并把想要启动的命令放入该文件中。

2、建立 rc-local.service 文件

Ubuntu20.04 不能像16.04 那样可以直接使用 /etc/rc.local 文件,需要设置service

nano /etc/systemd/system/rc-local.service

以下为我的rc-local.service文件中的内容

[Unit] Description=/etc/rc.local Compatibility ConditionFileIsExecutable=/etc/rc.local After=network.target [Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 RemainAfterExit=yes GuessMainPID=no [Install] WantedBy=multi-user.target

3、给rc.local加权限

chmod +x /etc/rc.local

4、启用服务

systemctl enable rc-local

5、启用服务并查询服务状态

systemctl start rc-local.service systemctl status rc-local.service

在启用服务的时候出现以下错误:

● rc-local.service - /etc/rc.local Compatibility Loaded: loaded (/etc/systemd/system/rc-local.serviceenabledvendor preset: enabled) Drop-In: /usr/lib/systemd/system/rc-local.service.d └─debian.conf Active: failed (Result: exit-code) since Sun 2020-05-24 09:36:11 UTC14s ago Process: 2611 ExecStart=/etc/rc.local start (code=exited, status=203/EXEC) May 24 09:36:11 scope systemd[1]: Starting /etc/rc.local Compatibility... May 24 09:36:11 scope systemd[2611]: rc-local.service: Failed to execute command: Permission denied May 24 09:36:11 scope systemd[2611]: rc-local.service: Failed at step EXEC spawning /etc/rc.local: Permission denied May 24 09:36:11 scope systemd[1]: rc-local.service: Control process exited, code=exited, status=203/EXEC May 24 09:36:11 scope systemd[1]: rc-local.service: Failed with result 'exit-code'. May 24 09:36:11 scope systemd[1]: Failed to start /etc/rc.local Compatibility.

经过查资料而知,是有shell的问题造成的。有些命令需要在bash shell中运行,而不能在dash中运行。

从Ubuntu 6.10开始,默认使用dash(theDebian Almquist Shell)而不是bash(the GNUBourne-Again Shell). 但Login Shell还是bash。

因此,在rc.local文件开头加上下面这句话即可

#!/bin/bash


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/284448.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-22
下一篇2023-04-22

发表评论

登录后才能评论

评论列表(0条)

    保存