Linux共享网络给其它主机

Linux共享网络给其它主机

文章目录

前言

本文主要讲解如何快速配置共享网络给同网段内其它主机,主要有如下几种情况:

  1. 本机有无线和有线网卡,无线能上网有线不能上网,有线网段内其它主机共享网络
  2. 本机有多有线网卡,其中一个网段能上网,共享网络给另一网段内其它主机

具体配置过程如下。

设置有网主机转发

配置本机网络允许转发,修改/etc/sysctl.conf

bash 复制代码
sudo vim /etc/sysctl.conf

# 增加或解屏蔽下边这行
net.ipv4.ip_forward=1

查看本机可以上网网卡的id

bash 复制代码
ip a
或
ifconfig
或
ipconfig

博主能上网的网卡名为wlan0,则配置iptables如下:

bash 复制代码
# 配置基本规则,允许进及转发
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT

# 允许所有主机均可用该转发
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
# 删除用 -D 参数,后续同理
# sudo iptables -t nat -D POSTROUTING -o wlan0 -j MASQUERADE

# 只允许特定网段主机访问网络
sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o wlan0 -j MASQUERADE

# 只允许特定主机访问网络
sudo iptables -t nat -A POSTROUTING -s 192.168.100.11,192.168.100.11 -o wlan0 -j MASQUERADE

# 只允许特定某几个主机访问网络
sudo iptables -t nat -A POSTROUTING -s 192.168.100.11-192.168.100.100 -o wlan0 -j MASQUERADE

iptables固化[1](#1)配置如下:

bash 复制代码
sudo apt-get install iptables-persistent
sudo iptables-save -f /etc/iptables/rules.v4

如果需要重启恢复初始路由或卸载,使用下边命令:

bash 复制代码
$ sudo apt-get remove iptables-persistent
$ sudo rm -rf /etc/iptables/

设置无网主机接入

设置有两种工具ip routeroute

ip route设置

如果有安装此软件,可用ip route设置[2](#2)[3](#3)

bash 复制代码
# 查看当前路由表
sudo ip route

# 添加转发路由
sudo ip route add default via 192.168.10.50

# 删除转发路由
sudo ip route del default via 192.168.10.50

route设置

如果有安装net-tools可以使用如下[4](#4)

bash 复制代码
# 查看当前路由表
sudo route

# 添加转发路由
sudo route add default gw 192.168.10.50 # 192.168.10.50 即主机A的IP地址

# 删除转发路由
sudo route del default gw 192.168.10.50 # 192.168.10.50 即主机A的IP地址

固化配置

bash 复制代码
# 修改开机自启
sudo vim /etc/rc.local

# 增加如下,根据上边选择的方式配置下边这行
# BEGIN: ADD ROUT FOR NETWORK
sudo ip route add default via 192.168.10.50
# END: ADD ROUT FOR NETWORK

总结

此时配置的无网主机已经能够连接到网络里了,大家也可以在此基础上再做进一步的配置,有问题欢迎留言交流。


  1. 【让云服务器更灵活】iptables转发tcp/udp端口请求_iptables udp转发-CSDN博客 ↩︎

  2. linux下4g模块共享网络给内网_quectel-cm 源码-CSDN博客 ↩︎

  3. route 添加路由 和 IP route 添加路由_ip route add-CSDN博客 ↩︎

  4. linux主机无线网络通过有线网口共享网络_linux 网线共享网络-CSDN博客 ↩︎

相关推荐
倔强的石头106几秒前
openEuler 开发环境搭建与工具链优化实践深度评测
运维·服务器·操作系统·openeuler
翼龙云_cloud1 分钟前
亚马逊云渠道商:如何3 步实现 AWS RDS 读写分离?
运维·服务器·云计算·php·aws
く成哦2 分钟前
Rancher部署k8s集群:开启容器编排新篇章
运维·docker·云原生·容器·kubernetes·rancher
嘉禾望岗5032 分钟前
lvs+keepalived轮询访问doris集群
linux·服务器·lvs
_OP_CHEN3 分钟前
【Linux系统编程】(十)从入门到精通!Linux 调试器 gdb/cgdb 超全使用指南,程序员必备调试神器
linux·运维·c/c++·linux开发工具·调试器·gdb/cgdb
本妖精不是妖精3 分钟前
在 CentOS 7 上部署 Node.js 18 + Claude Code
linux·python·centos·node.js·claudecode
李少兄3 分钟前
在 Linux 中精准查找名为 `xxx` 的文件或目录路径
android·linux·adb
7澄15 分钟前
Java Socket 网络编程实战:从基础通信到线程池优化
java·服务器·网络·网络编程·socket·多线程·客户端
2501_916008895 分钟前
App 上架服务行业的实际工作流程与工具选择 从人工代办到跨平台自动化的转变
android·运维·ios·小程序·uni-app·自动化·iphone
不会kao代码的小王6 分钟前
突破局域网!OpenObserve,数据观测随时随地
linux·windows·后端