Home Khác Lệnh dhclient của Linux: Thông tin, cú pháp mọi thứ bạn nên...

Lệnh dhclient của Linux: Thông tin, cú pháp mọi thứ bạn nên biết

Máy khách DHCP của Hiệp hội Hệ thống Internet, dhclient, cung cấp phương tiện để định cấu hình một hoặc nhiều giao diện mạng bằng Giao thức cấu hình máy chủ động, giao thức BOOTP hoặc nếu các giao thức này không thành công, bằng cách gán địa chỉ tĩnh.

Sự mô tả

Giao thức DHCP cho phép máy chủ lưu trữ liên hệ với máy chủ trung tâm duy trì danh sách các địa chỉ IP có thể được chỉ định trên một hoặc nhiều mạng con. Máy khách DHCP có thể yêu cầu một địa chỉ từ nhóm này và sau đó sử dụng nó trên cơ sở tạm thời để giao tiếp trên mạng. Giao thức DHCP cũng cung cấp một cơ chế theo đó máy khách có thể tìm hiểu các chi tiết quan trọng về mạng được đính kèm, chẳng hạn như vị trí của bộ định tuyến mặc định, vị trí của máy chủ định danh, v.v.

Khi khởi động, dhclient đọc tệp dhclient.conf để được hướng dẫn cấu hình. Sau đó, nó sẽ nhận được danh sách tất cả các giao diện mạng được cấu hình trong hệ thống hiện tại. Đối với mỗi giao diện, nó cố gắng cấu hình giao diện bằng giao thức DHCP.

Để theo dõi các hợp đồng thuê khi khởi động lại hệ thống và khởi động lại máy chủ, dhclient giữ một danh sách các hợp đồng thuê mà nó đã được chỉ định trong dhclient.leases. Khi khởi động, sau khi đọc dhclient.confdhclient đọc dhclient.leases để làm mới bộ nhớ của nó về những gì nó đã được chỉ định.

Khi một hợp đồng thuê mới được mua, nó sẽ được thêm vào phần cuối của dhclient.leases. Để ngăn tệp trở nên lớn tùy ý, thỉnh thoảng dhclient tạo một dhclient.leases mới từ cơ sở dữ liệu cho thuê trong lõi của nó. Phiên bản cũ của dhclient.leases được giữ lại dưới tên dhclient.leases ~ cho đến lần tiếp theo dhclient viết lại cơ sở dữ liệu.

Các hợp đồng thuê cũ được giữ lại trong trường hợp máy chủ DHCP không khả dụng khi dhclient được gọi lần đầu tiên (thường là trong quá trình khởi động hệ thống ban đầu). Trong trường hợp đó, các hợp đồng thuê cũ từ dhclient.leases chưa hết hạn sẽ được kiểm tra và nếu chúng được xác định là hợp lệ, chúng sẽ được sử dụng cho đến khi hết hạn hoặc máy chủ DHCP khả dụng.

Một máy chủ di động đôi khi có thể cần truy cập vào một mạng mà không có máy chủ DHCP nào tồn tại có thể được tải trước một hợp đồng thuê cho một địa chỉ cố định trên mạng đó. Khi tất cả cố gắng liên hệ với máy chủ DHCP không thành công, dhclient sẽ cố gắng xác thực hợp đồng thuê tĩnh và nếu thành công, hãy sử dụng hợp đồng thuê đó cho đến khi khởi động lại.

Máy chủ di động cũng có thể di chuyển đến một số mạng mà DHCP không khả dụng nhưng BOOTP thì có. Trong trường hợp đó, có thể thuận lợi khi sắp xếp với quản trị viên mạng một mục nhập trên cơ sở dữ liệu BOOTP, để máy chủ lưu trữ có thể khởi động nhanh chóng trên mạng đó thay vì xoay vòng qua danh sách các hợp đồng thuê cũ.

Cú pháp

  dhclient [ -4 | -6 ] [ -S ] [ -N [ -N... ] ] [ -T [ -T... ] ] [ -P [ -P... ] ]
         [ -p port ] [ -d ] [ -e VAR =value ] [ -q ] [ -1 ] [ -r | -x ]
         [ -lf lease-file ] [ -pf pid-file ] [ -cf config-file ]
         [ -sf script-file ] [ -s server ] [ -g relay ] [ -n ] [ -nc ] [ -nw ]
         [ -w ] [ -B ] [ -I dhcp-client-identifier ] [ -H host-name ]
         [ -F fqdn.fqdn ] [ -V vendor-class-identifier ]
         [ -R request-option-list ] [ -timeout timeout ] [ -v ] [ --version ]
         [ if0 [ ...ifN ] ]

Tùy chọn

4 Sử dụng giao thức DHCPv4 để lấy địa chỉ IPv4 và các thông số cấu hình (mặc định).
-6 Sử dụng giao thức DHCPv6 để lấy bất kỳ địa chỉ IPv6 nào có sẵn cùng với các thông số cấu hình. Chức năng của chế độ DHCPv6 có thể được sửa đổi với -S, -T và -Ns.
-S Thực hiện một yêu cầu chỉ thông tin qua DHCPv6 để nhận các thông số cấu hình không trạng thái. Không nên kết hợp tùy chọn này với -N, -P, hoặc -Ts hoặc chia sẻ tệp cho thuê giữa các chế độ hoạt động khác nhau. Chỉ hợp lệ với -6.
-N Thực hiện truy vấn địa chỉ (IA_NA) bình thường qua DHCPv6. Không nên kết hợp tùy chọn này với -P, -S, hoặc -Ts hoặc chia sẻ tệp tin cho thuê giữa các chế độ hoạt động khác nhau. Chỉ hợp lệ với -6.
-T Thực hiện truy vấn địa chỉ tạm thời (IA_TA) qua DHCPv6 (tắt truy vấn địa chỉ thông thường). Không nên kết hợp tùy chọn này với -N, -P, hoặc -Ss hoặc chia sẻ tệp cho thuê giữa các chế độ hoạt động khác nhau. Chỉ hợp lệ với -6.
-P Bật ủy quyền tiền tố IPv6 (tắt truy vấn địa chỉ thông thường). Không nên kết hợp tùy chọn này với -N, -S, hoặc -Ts hoặc chia sẻ các tệp tin cho thuê giữa các chế độ hoạt động khác nhau. Chỉ hợp lệ với -6.
-P Số cổng UDP mà máy khách DHCP sẽ nghe và truyền. Nếu không xác định, dhclient sử dụng cổng mặc định 68. Tùy chọn này chủ yếu hữu ích cho mục đích gỡ lỗi. Nếu một cổng khác được chỉ định để máy khách lắng nghe và truyền tải, máy khách cũng sử dụng một cổng đích khác: một cổng nhỏ hơn cổng đã chỉ định.
-d Buộc chạy dhclient như một quy trình nền trước. Điều này hữu ích khi chạy máy khách dưới trình gỡ lỗi hoặc khi chạy nó ra khỏi inittab trên hệ thống System V.
-e VAR = value Xác định các biến môi trường bổ sung cho môi trường nơi dhclient-script thực thi. Bạn có thể chỉ định nhiều -e trên dòng lệnh. Ví dụ: -e IF_METRIC=1
q Chặn tất cả các thiết bị đầu cuối và đầu ra nhật ký ngoại trừ các thông báo lỗi.
-1 Hãy thử một lần để có được hợp đồng thuê. Một lần thất bại, hãy thoát với mã số 2.
-r Yêu cầu dhclient giải phóng hợp đồng thuê hiện tại mà nó có khỏi máy chủ. Điều này không được yêu cầu bởi giao thức DHCP, nhưng một số ISP yêu cầu máy khách của họ thông báo cho máy chủ nếu họ muốn phát hành một địa chỉ IP được chỉ định.
-lf Đường dẫn đến tệp cơ sở dữ liệu cho thuê. Nếu không xác định, giá trị mặc định /var/lib/dhclient/dhclient.leases Được sử dụng.
-pf Đường dẫn đến tệp ID quy trình. Nếu không xác định, giá trị mặc định /var/run/dhclient.pid Được sử dụng.
-cf Đường dẫn đến tệp cấu hình máy khách. Nếu không xác định, giá trị mặc định /etc/dhcp/dhclient.conf Được sử dụng.
-sf Đường dẫn đến tập lệnh cấu hình mạng do dhclient gọi khi nó được cho thuê. Nếu không xác định, giá trị mặc định /sbin/dhclient-script Được sử dụng.
-S Chỉ định địa chỉ IP máy chủ hoặc tên miền đủ điều kiện để truyền thông điệp giao thức DHCP. Thông thường, dhclient truyền các thông điệp này tới 255.255.255.255 (địa chỉ phát sóng giới hạn IP). Ghi đè điều này chủ yếu hữu ích cho các mục đích gỡ lỗi.
-g Chỉ để gỡ lỗi. Đặt trường giaddr của tất cả các gói mà máy khách gửi đến địa chỉ IP được chỉ định. Điều này không được mong đợi sẽ hoạt động theo bất kỳ cách nhất quán hoặc hữu ích nào.
-N Không cấu hình bất kỳ giao diện nào. Hữu ích nhất kết hợp với -w.
-nc Không bỏ khả năng.

Thông thường, nếu dhclient được biên dịch với libcap-ng hỗ trợ, dhclient giảm hầu hết các khả năng ngay lập tức khi khởi động. Mặc dù an toàn hơn, điều này hạn chế đáng kể các hành động bổ sung liên quan đến dhclient-script có thể lấy. (Ví dụ: bất kỳ daemon nào dhclient-script tarts hoặc khởi động lại cũng sẽ kế thừa các khả năng bị hạn chế, điều này có thể ảnh hưởng đến hoạt động chính xác của chúng.) -nc có thể ngăn chặn việc giảm khả năng của dhclient. -nc bị bỏ qua nếu dhclient không được biên dịch với libcap-ng hỗ trợ.

-nw Trở thành một quy trình daemon ngay lập tức (ngay bây giờ) thay vì đợi cho đến khi có địa chỉ IP.
-w Tiếp tục chạy ngay cả khi không tìm thấy giao diện mạng nào. omshell có thể thông báo cho máy khách khi một giao diện mạng được thêm vào hoặc bị xóa để nó có thể cố gắng định cấu hình địa chỉ IP trên giao diện đó.
-B Đặt cờ quảng bá BOOTP trong các gói yêu cầu để máy chủ luôn phát các câu trả lời.
Tôi Chỉ định dhcp-client-Identity để gửi đến máy chủ DHCP.
-H Chỉ định tên máy chủ để gửi đến máy chủ DHCP. tên máy chủ tring chỉ chứa tiền tố tên máy khách của máy khách mà máy chủ sẽ thêm vào ddns-domainname hoặc tên miền , nếu có, để lấy tên miền đủ điều kiện của khách hàng. -H không được sử dụng với -F.
-F Chỉ định fqdn.fqdn để gửi đến máy chủ DHCP. Không thể sử dụng tùy chọn này với -H. fqdn.fqdn phải chỉ định tên miền hoàn chỉnh của máy khách mà máy chủ có thể sử dụng để cập nhật DNS động.
-V Chỉ định tùy chọn nhận dạng lớp-nhà cung cấp để gửi đến máy chủ DHCP.
R [, <option>…] Chỉ định danh sách các tùy chọn mà khách hàng sẽ yêu cầu từ máy chủ. Danh sách tùy chọn phải là một chuỗi đơn bao gồm các tên tùy chọn được phân tách bằng ít nhất một lệnh và các ký tự khoảng trắng tùy chọn. Danh sách tùy chọn mặc định là: subnet-mask, broadcast-address, time-offset, router, domain-name, domain-name-server, host-name, nis-domain, nis-server, ntp-server, interface-mtu -R không thêm các tùy chọn vào yêu cầu mặc định, nó sẽ ghi đè danh sách yêu cầu mặc định. Hãy ghi nhớ điều này nếu bạn muốn yêu cầu một tùy chọn bổ sung ngoài danh sách yêu cầu mặc định. Bạn phải chỉ định tất cả các tên tùy chọn cho -R.
-hết giờ Chỉ định thời gian mà sau đó dhclient sẽ quyết định rằng không thể liên hệ với máy chủ DHCP nào khi không nhận được phản hồi.
-v Bật thông báo nhật ký chi tiết.

Nếu máy khách bị chết bởi một tín hiệu (ví dụ: khi tắt máy hoặc khởi động lại), nó sẽ không thực thi dhclient-script khi thoát. Tuy nhiên, nếu bạn tắt ứng dụng một cách dễ dàng với -r or -x sẽ thực thi dhclient-script khi tắt máy với lý do cụ thể để gọi tập lệnh trong bảng môi trường.

Omapi

Máy khách DHCP cung cấp một số khả năng kiểm soát nó trong khi nó đang chạy mà không cần dừng nó lại. Khả năng này được cung cấp bằng cách sử dụng OMAPI, một API để thao tác các đối tượng từ xa. Máy khách OMAPI kết nối với máy khách bằng TCP / IP, xác thực và sau đó có thể kiểm tra trạng thái hiện tại của máy khách và thực hiện các thay đổi đối với nó.

Thay vì triển khai trực tiếp giao thức OMAPI cơ bản, các chương trình người dùng nên sử dụng API dhcpctl hoặc chính OMAPI. Dhcpctl là một trình bao bọc xử lý một số công việc nội trợ mà OMAPI không tự động làm. Hầu hết những điều bạn muốn làm với khách hàng có thể được thực hiện trực tiếp bằng cách sử dụng omshellthay vì phải viết một chương trình đặc biệt.

Đối tượng điều khiển

Đối tượng điều khiển cho phép bạn tắt máy khách, giải phóng tất cả các hợp đồng thuê mà nó nắm giữ và xóa mọi bản ghi DNS mà nó có thể đã thêm vào. Nó cũng cho phép bạn tạm dừng máy khách – điều này sẽ hủy cấu hình bất kỳ giao diện nào mà máy khách sử dụng. Sau đó, bạn có thể khởi động lại nó, điều này khiến nó cấu hình lại các giao diện đó. Bạn thường sẽ tạm dừng ứng dụng trước khi chuyển sang chế độ ngủ đông hoặc ngủ trên máy tính xách tay. Sau đó, bạn sẽ tiếp tục nó sau khi có điện trở lại. Điều này cho phép tắt các thẻ PC trong khi máy tính đang ở chế độ ngủ đông hoặc ngủ, sau đó khởi động lại về trạng thái trước đó khi máy tính thoát ra khỏi chế độ ngủ đông hoặc ngủ.

Đối tượng điều khiển có một thuộc tính – tiểu bang . Để tắt máy khách, hãy đặt tiểu bang đến 2. Nó tự động làm DHCPRELEASE. Để tạm dừng, hãy đặt tiểu bang thành 3. Để tiếp tục, hãy đặt tiểu bang đến 4.

Các ví dụ

dhclient eth0

Gia hạn địa chỉ IP được gán động của thiết bị Ethernet chính.

ifconfig – Xem hoặc sửa đổi cấu hình của các giao diện mạng.

Chúng tôi hy vọng rằng bài viết này bao gồm tất cả các phương pháp cho lệnh dhclient trong Linux: Thông tin, cú pháp mọi thứ bạn nên biết. Nếu bạn thấy bài viết này thực sự hữu ích với bạn, hãy chia sẻ thông tin này đến bạn bè, người thân, gia đình và những người khác của bạn. Hẹn gặp lại các bạn trong những bài viết tiếp theo với helpsly.net!