device

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 13, 2022 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Name string `json:"name"` //设备名称
	CIDR string `json:"cidr"` //cidr地址
	MTU  int    `json:"mtu"`  //最大传输单元,默认1400
	DNS  string `json:"dns"`  //dns地址,仅在windows生效
}

type Device

type Device interface {
	Name() string                           //return device name if device exists
	Create(config Config) error             //create device
	Close() error                           //close device
	Setup() error                           //setup device
	OverwriteCIDR(cidr string) error        //overwrite cidr
	Up() error                              //set device up
	Down() error                            //set device down
	Read(packet []byte) (n int, err error)  //read
	Write(packet []byte) (n int, err error) //write
}

Device @Description:

func New

func New(cfg Config) (device Device, err error)

New @Description: @param cfg @return device @return err

type TunDevice

type TunDevice struct {
	// contains filtered or unexported fields
}

TunDevice @Description:

func (*TunDevice) Close

func (d *TunDevice) Close() error

Close @Description: @receiver d @return error

func (*TunDevice) Create

func (d *TunDevice) Create(config Config) error

Create @Description: @receiver d @param config @return error

func (*TunDevice) Down

func (d *TunDevice) Down() error

Down @Description: @receiver d @return error

func (*TunDevice) Name

func (d *TunDevice) Name() string

Name @Description: @receiver d @return string

func (*TunDevice) OverwriteCIDR

func (d *TunDevice) OverwriteCIDR(cidr string) error

OverwriteCIDR @Description: @receiver d @param cidr @return error

func (*TunDevice) Read

func (d *TunDevice) Read(packet []byte) (n int, err error)

Read @Description: @receiver d @param packet @return n @return err

func (*TunDevice) Setup

func (d *TunDevice) Setup() error

Setup @Description: @receiver d @return error

func (*TunDevice) Up

func (d *TunDevice) Up() error

Up @Description: @receiver d @return error

func (*TunDevice) Write

func (d *TunDevice) Write(packet []byte) (n int, err error)

Write @Description: @receiver d @param packet @return n @return err

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL