<!DOCTYPE html>
    <html lang="vi" xmlns="http://www.w3.org/1999/xhtml" prefix="og: http://ogp.me/ns#">
    <head>
<title>Cách biến Raspberry Pi thành WiFi Bridge</title>
<meta name="description" content="Cách biến Raspberry Pi thành WiFi Bridge - Savefile - Tin Tức -...">
<meta name="author" content=".: Nguoicodonvn2008.info - Cõi lòng người cô đơn :.">
<meta name="copyright" content=".: Nguoicodonvn2008.info - Cõi lòng người cô đơn :. [admin@nguoicodonvn2008.info]">
<meta name="robots" content="index, archive, follow, noodp">
<meta name="googlebot" content="index,archive,follow,noodp">
<meta name="msnbot" content="all,index,follow">
<meta name="generator" content="NukeViet v4.5">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:title" content="Cách biến Raspberry Pi thành WiFi Bridge">
<meta property="og:type" content="website">
<meta property="og:description" content="Savefile - Tin Tức - https&#x3A;&#x002F;&#x002F;www.nguoicodonvn2008.info&#x002F;vi&#x002F;news&#x002F;savefile&#x002F;kien-thuc-may-tinh&#x002F;cach-bien-raspberry-pi-thanh-wifi-bridge-2212.html">
<meta property="og:site_name" content=".&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.">
<meta property="og:url" content="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-bien-raspberry-pi-thanh-wifi-bridge-2212.html">
<link rel="shortcut icon" href="https://www.nguoicodonvn2008.info/favicon.ico">
<link rel="canonical" href="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-bien-raspberry-pi-thanh-wifi-bridge-2212.html">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/" title="Tin Tức" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/karaoke-dual/" title="Tin Tức - Karaoke Dual" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/nhac-tre/" title="Tin Tức - Nhạc trẻ" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tru-tinh/" title="Tin Tức - Trữ tình" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/nuoc-ngoai/" title="Tin Tức - Nước ngoài" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/remix/" title="Tin Tức - Remix" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tam-su-tinh-yeu/" title="Tin Tức - Tâm sự tình yêu" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tho-suu-tam/" title="Tin Tức - Thơ sưu tầm" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/cuoc-song/" title="Tin Tức - Cuộc sống" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/phan-mem/" title="Tin Tức - Phần mềm" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/kien-thuc-may-tinh/" title="Tin Tức - Kiến thức máy tính" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/hoc-tap/" title="Tin Tức - Học tập" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tai-lieu/" title="Tin Tức - Tài liệu" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/de-thi/" title="Tin Tức - Đề thi" type="application/rss+xml">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/assets/css/font-awesome.min.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/bootstrap.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/style.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/news.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/custom.css" type="text/css">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/jquery/jquery.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/language/vi.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/DOMPurify/purify3.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/global.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/site.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/news.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/custom.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/bootstrap.min.js" type="text/javascript">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/assets/css/font-awesome.min.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/bootstrap.non-responsive.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/style.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/style.non-responsive.css">
<link rel="StyleSheet" href="https://www.nguoicodonvn2008.info/themes/default/css/news.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/custom.css">
<style type="text/css">
	body{background: #fff;}
</style>
    </head>
    <body>
<div id="print">
	<div id="hd_print">
		<h2 class="pull-left">.&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.</h2>
		<p class="pull-right"><a title=".&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;." href="https://www.nguoicodonvn2008.info/">https://www.nguoicodonvn2008.info</a></p>
	</div>
	<div class="clear"></div>
	<hr />
	<div id="content">
		<h1>Cách biến Raspberry Pi thành WiFi Bridge</h1>
		<ul class="list-inline">
			<li>Thứ bảy - 13/06/2020 01:02</li>
			<li class="hidden-print txtrequired"><em class="fa fa-print">&nbsp;</em><a title="In ra" href="javascript:;" onclick="window.print()">In ra</a></li>
			<li class="hidden-print txtrequired"><em class="fa fa-power-off">&nbsp;</em><a title="Đóng cửa sổ này" href="javascript:;" onclick="window.close()">Đóng cửa sổ này</a></li>
		</ul>
		<div class="clear"></div>
		<div id="hometext">
		</div>
				<div class="imghome">
			<img alt="Cách biến Raspberry Pi thành WiFi Bridge" src="https://st.quantrimang.com/photos/image/2020/06/13/bien-raspberry-pi-thanh-wifi-bridge-1.jpg" width="460" class="img-thumbnail" />
		</div>
		<div class="clear"></div>
		<div id="bodytext" class="clearfix">
			<p style="text-align: justify;">Ngày nay, có vẻ như mọi thiết bị đều hỗ trợ WiFi, nhưng thực tế không phải tất cả các thiết bị đều có khả năng kết nối Internet không dây. Đây là lúc&nbsp;Raspberry Pi&nbsp;phát huy tác dụng. Bạn có thể biến biến Raspberry Pi thành WiFi Bridge.</p>

<p style="text-align: justify;">Nếu bạn muốn sử dụng lại máy tính để bàn cũ, chỉ có Ethernet và cần một cách nhanh chóng, dễ dàng để chuyển đổi tín hiệu WiFi thành kết nối Ethernet, bạn có thể sử dụng Raspberry Pi.</p>

<h2 style="text-align: justify;">Những thứ cần chuẩn bị</h2>

<p style="text-align: justify;">Để hoàn thành hướng dẫn này, bạn sẽ cần:</p>

<ul>
	<li style="text-align: justify;">Model Raspberry Pi với mô-đun WiFi (Raspberry Pi zero, 3 và 4) chạy Raspberry Pi OS</li>
	<li style="text-align: justify;">Cáp nguồn tương thích với Raspberry Pi</li>
	<li style="text-align: justify;">Bàn phím ngoài và cách gắn nó vào Raspberry Pi</li>
	<li style="text-align: justify;">Cáp HDMI hoặc micro HDMI, tùy thuộc vào model Raspberry Pi</li>
	<li style="text-align: justify;">Màn hình ngoài</li>
	<li style="text-align: justify;">Cáp Ethernet</li>
</ul>

<div style="text-align: justify;">&nbsp;</div>

<h2 style="text-align: justify;">Cập nhật Pi</h2>

<p style="text-align: justify;">Nếu chưa thực hiện, hãy gắn bàn phím ngoài, màn hình và bất kỳ thiết bị ngoại vi nào khác vào Raspberry Pi, sau đó cắm Pi vào nguồn điện.</p>

<p style="text-align: justify;">Trước khi bạn bắt đầu, hãy kiểm tra xem Raspberry Pi đã được cập nhật chưa. Mở một Terminal mới bằng cách nhấp vào biểu tượng của Terminal trên thanh công cụ Raspbian, sau đó chạy các lệnh sau:</p>

<pre id="pre0">
<code>sudo apt update &amp;&amp; sudo apt -y upgrade</code></pre>

<h2 style="text-align: justify;">Thiết lập dịch vụ mạng: Cài đặt dnsmasq</h2>

<p style="text-align: justify;">Tiếp theo, cài đặt dnsmasq, cung cấp caching&nbsp;Domain Name System (DNS)&nbsp;và server&nbsp;Dynamic Host Configuration Protocol (DHCP). Hãy sử dụng gói này để xử lý các yêu cầu DNS. Điều này sẽ cho phép Raspberry Pi hoạt động như một mini router cho thiết bị chỉ có Ethernet.</p>

<p style="text-align: justify;">Để cài đặt dnsmasq, hãy chạy lệnh sau:</p>

<pre id="pre1">
<code>sudo apt install dnsmasq</code></pre>

<div style="text-align: justify;">&nbsp;</div>

<h2 style="text-align: justify;">Cấu hình kết nối Ethernet</h2>

<p style="text-align: justify;">Tiếp theo, hãy thiết lập interface eth0 để sử dụng&nbsp;địa chỉ IP tĩnh, bằng cách sửa đổi file&nbsp;<strong>dhcpcd.conf.</strong>&nbsp;Để mở file cấu hình này, hãy chạy lệnh sau:</p>

<pre id="pre2">
<code>sudo nano /etc/dhcpcd.conf</code></pre>

<p style="text-align: justify;">Bây giờ, file dhcpcd.conf sẽ mở trong&nbsp;trình soạn thảo Nano. Trong file này, thêm vào thông tin sau:</p>

<pre id="pre3">
<code>interface eth0
 static ip_address=192.168.220.1/24
 static routers=192.168.220.0</code></pre>

<p style="text-align: justify;">Lưu các thay đổi bằng cách nhấn&nbsp;<code>Ctrl</code>+<code>O</code>. Để đóng file cấu hình, nhấn&nbsp;<code>Ctrl</code>+<code>X</code>.</p>

<p style="text-align: justify;">Những thay đổi này có thể được thực hiện bằng cách khởi động lại service dhcpcd:</p>

<pre id="pre4">
<code>sudo service dhcpcd restart</code></pre>

<h3 style="text-align: justify;">Thay thế file cấu hình dnsmasq</h3>

<p style="text-align: justify;">Gói dnsmasq cung cấp một file cấu hình mặc định, nhưng bạn cần thay thế nó bằng các cài đặt tùy chỉnh của riêng mình để cho dnsmasq biết cách xử lý lưu lượng DHCP và DNS.</p>

<p style="text-align: justify;">Trước khi thực hiện bất kỳ thay đổi nào, hãy đổi tên và định vị lại file dnsmasq.conf ban đầu:</p>

<pre id="pre5">
<code>sudo nano /etc/dnsmasq.conf /etc/dnsmasq.conf.original</code></pre>

<p style="text-align: justify;">Mở file cấu hình thay thế để chỉnh sửa:</p>

<pre id="pre6">
<code>sudo nano /etc/dnsmasq.conf</code></pre>

<p style="text-align: justify;">Bây giờ, bạn nên xem file dnsmasq.conf trong trình soạn thảo Nano. Trong Nano, thêm vào:</p>

<pre id="pre7">
<code>interface=eth0
 listen-address=192.168.220.1
 bind-interfaces
 server=8.8.8.8
 domain-needed
 bogus-priv
 dhcp-range=192.168.220.50,192.168.220.150,12h</code></pre>

<figure>
<div style="text-align: justify;"><img alt="Thay thế file cấu hình dnsmasq" data-i="0" data-src="https://st.quantrimang.com/photos/image/2020/06/13/bien-raspberry-pi-thanh-wifi-bridge-1.jpg" data-was-processed="true" height="426" src="https://st.quantrimang.com/photos/image/2020/06/13/bien-raspberry-pi-thanh-wifi-bridge-1.jpg" width="650" /></div>

<figcaption>
<div style="text-align: justify;">Thay thế file cấu hình dnsmasq</div>
</figcaption>
</figure>

<p style="text-align: justify;">Bạn có thể sử dụng trình soạn thảo Nano để tạo file dnsmasq.conf tùy chỉnh.</p>

<p style="text-align: justify;">Lưu các thay đổi, bằng cách nhấn&nbsp;<code>Ctrl</code>+<code>O</code>. Để đóng file cấu hình, nhấn&nbsp;<code>Ctrl</code>+<code>X</code>.</p>

<h2 style="text-align: justify;">Cho phép chuyển tiếp IP</h2>

<p style="text-align: justify;">Tiếp theo, kích hoạt chuyển tiếp IP để Raspberry Pi có thể chấp nhận các gói mạng từ kết nối Ethernet và chuyển tiếp chúng đến router.</p>

<p style="text-align: justify;">Để cho phép chuyển tiếp IP ipv4p, hãy chỉnh sửa file cấu hình sysctl.conf.</p>

<pre id="pre8">
<code>sudo nano /etc/sysctl.conf</code></pre>

<p style="text-align: justify;">File sysctl.conf bây giờ sẽ khởi chạy trong trình soạn thảo Nano. Trong file này, tìm dòng sau:</p>

<pre id="pre9">
<code>#net.ipv4.ip_forward=1</code></pre>

<p style="text-align: justify;">Xóa&nbsp;<strong>#</strong>&nbsp;để dòng này trở thành:</p>

<pre id="pre10">
<code>net.ipv4.ip_forward=1</code></pre>

<figure>
<div style="text-align: justify;"><img alt="Cho phép chuyển tiếp IP" data-i="1" data-src="https://st.quantrimang.com/photos/image/2020/06/13/bien-raspberry-pi-thanh-wifi-bridge-2.jpg" data-was-processed="true" height="433" src="https://st.quantrimang.com/photos/image/2020/06/13/bien-raspberry-pi-thanh-wifi-bridge-2.jpg" width="650" /></div>

<figcaption>
<div style="text-align: justify;">Cho phép chuyển tiếp IP</div>
</figcaption>
</figure>

<p style="text-align: justify;">Lưu các thay đổi và đóng file cấu hình.</p>

<p style="text-align: justify;">Bây giờ, hãy làm file cấu hình mới sysctl.conf có hiệu lực:</p>

<pre id="pre11">
<code>sudo sh -c &quot;echo 1 &gt; /proc/sys/net/ipv4/ip_forward&quot;</code></pre>

<div style="text-align: justify;">&nbsp;</div>

<h3 style="text-align: justify;">Bắt đầu chuyển tiếp lưu lượng từ Ethernet sang WiFi</h3>

<p style="text-align: justify;">Bây giờ, bạn đã kích hoạt chuyển tiếp IP thành công. Bạn có thể cấu hình&nbsp;tường lửa&nbsp;để chuyển tiếp lưu lượng truy cập từ interface Ethernet (eth0) sang kết nối WiFi. Với tính năng chuyển tiếp này, mọi thiết bị kết nối với Raspberry Pi qua Ethernet sẽ có quyền truy cập vào kết nối WiFi (wlan0) của Pi.</p>

<p style="text-align: justify;">Thêm một số quy tắc để cho Raspberry Pi biết cách chuyển tiếp tất cả các gói dữ liệu mà nó nhận được:</p>

<pre id="pre12">
<code>sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
 sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
 sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT</code></pre>

<p style="text-align: justify;">Lưu các quy tắc mới này:</p>

<pre id="pre13">
<code>sudo sh -c &quot;iptables-save &gt; /etc/iptables.ipv4.nat&quot;</code></pre>

<p style="text-align: justify;">Các quy tắc này sẽ bị xóa mỗi khi Raspberry Pi khởi động lại, vì vậy hãy đảm bảo rằng chúng được load lại khi khởi động.</p>

<p style="text-align: justify;">Xác định những gì xảy ra khi khởi động bằng cách chỉnh sửa file rc.local:</p>

<pre id="pre14">
<code>sudo nano /etc/rc.local</code></pre>

<p style="text-align: justify;">Bây giờ, file rc.local sẽ mở trong trình soạn thảo Nano. Trong trình chỉnh sửa, tìm mục sau:</p>

<pre id="pre15">
<code>exit 0</code></pre>

<p style="text-align: justify;">Thêm các mục sau trực tiếp trên dòng&nbsp;<strong>“exit”:</strong></p>

<pre id="pre16">
<code>iptables-restore &lt; /etc/iptables.ipv4.nat</code></pre>

<p style="text-align: justify;">Lưu các thay đổi và đóng file cấu hình.</p>

<h2 style="text-align: justify;">Kiểm tra WiFi bridge</h2>

<p style="text-align: justify;">Bước cuối cùng là bắt đầu service dnsmasq:</p>

<pre id="pre17">
<code>sudo service dnsmasq start</code></pre>

<p style="text-align: justify;">Bây giờ, bạn có thể kiểm tra WiFi bridge của mình! Gắn bất kỳ thiết bị nào chỉ có Ethernet vào Raspberry Pi thông qua cáp Ethernet. Raspberry Pi giờ đây sẽ cung cấp kết nối Internet cho thiết bị chỉ có Ethernet này.</p>
		</div>
				<div id="author">
						<p>
				<strong>Nguồn tin:</strong>
				Quantrimang.com
			</p>
		</div>
	</div>
	<div id="footer" class="clearfix">
		<div id="url">
			<strong>URL của bản tin này: </strong><a href="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-bien-raspberry-pi-thanh-wifi-bridge-2212.html" title="Cách biến Raspberry Pi thành WiFi Bridge">https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-bien-raspberry-pi-thanh-wifi-bridge-2212.html</a>

		</div>
		<div class="clear"></div>
		<div class="copyright">
			&copy; .&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.
		</div>
		<div id="contact">
			<a href="mailto:admin@nguoicodonvn2008.info">admin@nguoicodonvn2008.info</a>
		</div>
	</div>
</div>
        <div id="timeoutsess" class="chromeframe">
            Bạn đã không sử dụng Site, <a onclick="timeoutsesscancel();" href="https://www.nguoicodonvn2008.info/#">Bấm vào đây để duy trì trạng thái đăng nhập</a>. Thời gian chờ: <span id="secField"> 60 </span> giây
        </div>
        <div id="openidResult" class="nv-alert" style="display:none"></div>
        <div id="openidBt" data-result="" data-redirect=""></div>
		</script>
		<div class="car-top">
  <span><img src="https://www.nguoicodonvn2008.info/themes/default/images/car.png" alt=""></span>
</div>
<script src="https://www.nguoicodonvn2008.info/assets/js/jquery/jquery.min.js"></script>
<script>var nv_base_siteurl="/",nv_lang_data="vi",nv_lang_interface="vi",nv_name_variable="nv",nv_fc_variable="op",nv_lang_variable="language",nv_module_name="news",nv_func_name="savefile",nv_is_user=0, nv_my_ofs=-4,nv_my_abbr="EDT",nv_cookie_prefix="nv4c_e856T",nv_check_pass_mstime=1738000,nv_area_admin=0,nv_safemode=0,theme_responsive=0,nv_recaptcha_ver=2,nv_recaptcha_sitekey="",nv_recaptcha_type="image",XSSsanitize=1;</script>
<script src="https://www.nguoicodonvn2008.info/assets/js/language/vi.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/DOMPurify/purify3.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/global.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/site.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/news.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/main.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/custom.js"></script>
<script type="application/ld+json">
        {
            "@context": "https://schema.org",
            "@type": "Organization",
            "url": "https://www.nguoicodonvn2008.info",
            "logo": "https://www.nguoicodonvn2008.info/uploads/angel.gif"
        }
        </script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/bootstrap.min.js"></script>
<script type="text/javascript">
var $scrolltop = $('.car-top');
$scrolltop.on('click', function () {
    $('html,body').animate({
        scrollTop: 0
    }, 800);
    $(this).addClass("car-run");
    setTimeout(function(){ $scrolltop.removeClass('car-run');}, 1000);
    return false;
});
$(window).on('scroll', function ()
{ 
    if($(window).scrollTop() >= 200)
    {
        $scrolltop.addClass("show");
        $scrolltop.addClass("car-down");
    }
    else
    {
       $scrolltop.removeClass("show");
       setTimeout(function(){ $scrolltop.removeClass('car-down');}, 300);
    }
});
</script>
</body>
</html>